.tk-gastro-menu{max-width:980px;margin:0 auto;font-family:inherit}
.tk-gastro-header{margin-bottom:1.5rem}
.tk-gastro-header h2{margin:0 0 .35rem;font-size:clamp(1.75rem,3vw,2.5rem)}
.tk-gastro-header p{margin:0;color:#646970}
.tk-gastro-filters{display:flex;flex-wrap:wrap;gap:.5rem;margin:0 0 1.5rem}
.tk-gastro-filters button{border:1px solid #c3c4c7;background:#fff;padding:.55rem .8rem;border-radius:999px;cursor:pointer;font:inherit}
.tk-gastro-filters button.is-active{background:#1d2327;color:#fff;border-color:#1d2327}
.tk-gastro-category{margin:2rem 0}
.tk-gastro-category>h3{font-size:1.4rem;border-bottom:2px solid currentColor;padding-bottom:.4rem;margin-bottom:.5rem}
.tk-gastro-item{padding:1rem 0;border-bottom:1px solid #dcdcde}
.tk-gastro-item-main{display:grid;grid-template-columns:minmax(0,1fr) minmax(170px,260px);gap:1.5rem;align-items:start}
.tk-gastro-item h4{margin:0 0 .25rem;font-size:1.08rem}
.tk-gastro-description{margin:.15rem 0 .6rem;color:#50575e}
.tk-gastro-components{margin:.15rem 0 .45rem;font-size:.88rem;color:#50575e}
.tk-gastro-variants{display:flex;flex-direction:column;gap:.35rem}
.tk-gastro-variant{display:flex;justify-content:space-between;gap:1rem}
.tk-gastro-tags{display:flex;flex-wrap:wrap;gap:.35rem}
.tk-gastro-tags span{font-size:.78rem;border:1px solid #dcdcde;border-radius:999px;padding:.18rem .45rem}
.tk-gastro-meta{font-size:.78rem;color:#646970;margin-top:.65rem;display:flex;flex-direction:column;gap:.15rem}
.tk-gastro-empty{padding:1rem;border:1px solid #dcdcde;background:#fff}
@media(max-width:640px){
  .tk-gastro-item-main{grid-template-columns:1fr;gap:.7rem}
  .tk-gastro-variants{max-width:none}
}

.tk-gastro-filter-panel{margin:1.2rem 0 2rem;padding:1rem;border:1px solid #dcdcde;border-radius:10px;background:rgba(255,255,255,.55)}
.tk-gastro-filter-heading{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.8rem}
.tk-gastro-filter-group{display:grid;grid-template-columns:minmax(110px,150px) 1fr;gap:.75rem;align-items:start;padding:.45rem 0}
.tk-gastro-filter-label{font-size:.86rem;font-weight:600;color:#50575e;padding-top:.45rem}
.tk-gastro-filter-reset{border:0;background:transparent;text-decoration:underline;cursor:pointer;font:inherit;padding:.35rem .2rem}
.tk-gastro-filters{margin:0}
.tk-gastro-filters button{transition:background-color .15s ease,color .15s ease,border-color .15s ease}
.tk-gastro-filters button.is-active{background:#1d2327;color:#fff;border-color:#1d2327}
.tk-gastro-variant.is-single-price{justify-content:flex-end}
@media(max-width:640px){
  .tk-gastro-filter-group{grid-template-columns:1fr;gap:.15rem}
  .tk-gastro-filter-label{padding-top:0}
}

.tk-gastro-filter-wrap{margin:1rem 0 1.4rem}
.tk-filter-toggle{display:none;border:1px solid #c3c4c7;background:#fff;border-radius:999px;padding:.45rem .8rem;font:inherit;cursor:pointer}
.tk-gastro-filter-panel{margin:0;padding:.65rem .8rem;border:1px solid #dcdcde;border-radius:8px;background:rgba(255,255,255,.42)}
.tk-gastro-filter-heading{display:flex;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.35rem}
.tk-gastro-filter-heading strong{font-size:.9rem}
.tk-gastro-filter-group{display:flex;align-items:center;gap:.55rem;padding:.25rem 0}
.tk-gastro-filter-label{min-width:92px;font-size:.78rem;font-weight:600;color:#646970;padding:0}
.tk-gastro-filters{display:flex;flex-wrap:wrap;gap:.35rem;margin:0}
.tk-gastro-filters button{padding:.32rem .58rem;font-size:.8rem;line-height:1.2;border-radius:999px}
.tk-filter-reset{font-size:.78rem;text-decoration:none;border:0;background:transparent;color:#646970;cursor:pointer;padding:.2rem .3rem}
.tk-filter-reset:hover{text-decoration:underline}
@media(max-width:640px){
  .tk-filter-toggle{display:inline-flex;align-items:center;gap:.35rem;margin-bottom:.5rem}
  .tk-gastro-filter-panel{display:none}
  .tk-gastro-filter-panel.is-open{display:block}
  .tk-gastro-filter-group{display:block;padding:.35rem 0}
  .tk-gastro-filter-label{display:block;margin-bottom:.25rem;min-width:0}
}

.tk-gastro-filter-wrap{margin:.75rem 0 1.2rem}
.tk-gastro-filter-topline{display:flex;justify-content:flex-end;align-items:center;gap:.5rem;margin-bottom:.35rem}
.tk-gastro-filter-panel{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:.45rem;
  padding:.45rem .55rem;
  border:1px solid #e2e4e7;
  border-radius:999px;
  background:rgba(255,255,255,.38)
}
.tk-gastro-filter-group{
  display:flex;
  align-items:center;
  gap:.4rem;
  padding:0;
}
.tk-gastro-filter-label{
  min-width:auto;
  font-size:.72rem;
  font-weight:600;
  color:#72777c;
  padding:0;
  white-space:nowrap;
}
.tk-gastro-filters{gap:.28rem}
.tk-gastro-filters button{
  padding:.28rem .52rem;
  font-size:.76rem;
  line-height:1.15;
  border-radius:999px;
}
.tk-filter-separator{
  width:1px;
  height:22px;
  background:#dcdcde;
  display:inline-block;
}
.tk-filter-reset{
  font-size:.76rem;
  border:0;
  background:transparent;
  color:#646970;
  cursor:pointer;
  padding:.25rem .35rem;
}
.tk-filter-reset:hover{text-decoration:underline}
.tk-filter-toggle{display:none}
@media(max-width:760px){
  .tk-gastro-filter-topline{justify-content:flex-start}
  .tk-filter-toggle{
    display:inline-flex;
    border:1px solid #c3c4c7;
    background:#fff;
    border-radius:999px;
    padding:.4rem .7rem;
    font:inherit;
    font-size:.8rem;
    cursor:pointer
  }
  .tk-gastro-filter-panel{
    display:none;
    border-radius:10px;
    align-items:flex-start;
    gap:.6rem;
    padding:.65rem
  }
  .tk-gastro-filter-panel.is-open{display:block}
  .tk-gastro-filter-group{
    display:block;
    margin:.35rem 0 .55rem
  }
  .tk-gastro-filter-label{
    display:block;
    margin-bottom:.25rem
  }
  .tk-filter-separator{display:none}
}

/* v0.10 Branding */
.tk-gastro-menu{--tk-gastro-accent:currentColor}
.tk-gastro-brand-logo{margin:0 0 1rem}
.tk-gastro-brand-logo img{display:block;max-width:min(260px,70%);max-height:130px;width:auto;height:auto}
.tk-gastro-menu .tk-gastro-category>h3{border-bottom-color:var(--tk-gastro-accent)}
.tk-gastro-menu .tk-gastro-filters button.is-active{background:var(--tk-gastro-accent);border-color:var(--tk-gastro-accent)}
.tk-gastro-style-inherit{font-family:inherit;color:inherit}
.tk-gastro-style-modern{padding:clamp(1rem,3vw,2rem);border-radius:14px;background:#fff}
.tk-gastro-style-modern .tk-gastro-header h2{letter-spacing:-.025em}
.tk-gastro-style-elegant .tk-gastro-header{text-align:center;margin-bottom:2rem}
.tk-gastro-style-elegant .tk-gastro-header h2,
.tk-gastro-style-elegant .tk-gastro-category>h3{font-family:Georgia,"Times New Roman",serif;font-weight:400}
.tk-gastro-style-elegant .tk-gastro-brand-logo img{margin-inline:auto}
.tk-gastro-style-elegant .tk-gastro-category>h3{text-align:center;border-bottom-width:1px}
.tk-gastro-style-rustic{padding:clamp(1rem,3vw,2rem);border:1px solid rgba(80,65,45,.22);border-radius:6px;background:#fbf8f1}
.tk-gastro-style-rustic .tk-gastro-header h2,
.tk-gastro-style-rustic .tk-gastro-category>h3{font-family:Georgia,"Times New Roman",serif}
.tk-gastro-style-minimal .tk-gastro-filter-panel{border:0;padding-left:0;padding-right:0;background:transparent}
.tk-gastro-style-minimal .tk-gastro-tags span{border:0;padding-left:0}


/* ==========================================================
   TK Gastro v0.10.2 – Design-Presets & Mobile Filter
   ========================================================== */

/* Gemeinsame Basis */
.tk-gastro-menu{
  --tkg-space: 1rem;
  --tkg-radius: 10px;
}
.tk-gastro-header{margin-bottom:1.5rem}
.tk-gastro-item{transition:background .18s ease}
.tk-gastro-item-title,
.tk-gastro-price{font-weight:700}

/* WEBSITE ÜBERNEHMEN – bewusst neutral */
.tk-gastro-style-inherit{
  background:transparent;
  border:0;
  border-radius:0;
  box-shadow:none;
  font-family:inherit;
  color:inherit;
}

/* MODERN – klar, kompakt, Kartencharakter */
.tk-gastro-style-modern{
  padding:clamp(1.1rem,3vw,2.25rem);
  border-radius:18px;
  background:#fff;
  box-shadow:0 10px 35px rgba(0,0,0,.07);
}
.tk-gastro-style-modern .tk-gastro-category>h3{
  padding-bottom:.55rem;
  border-bottom-width:3px;
}
.tk-gastro-style-modern .tk-gastro-item{
  padding:1.2rem .25rem;
}
.tk-gastro-style-modern .tk-gastro-tags span{
  border-radius:999px;
}

/* ELEGANT – ruhig, luftig, fein */
.tk-gastro-style-elegant{
  max-width:960px;
  margin-inline:auto;
  padding:clamp(1.25rem,4vw,3rem);
  background:#fff;
  border:1px solid rgba(0,0,0,.08);
  border-radius:2px;
}
.tk-gastro-style-elegant .tk-gastro-header{
  text-align:center;
  margin-bottom:2.5rem;
}
.tk-gastro-style-elegant .tk-gastro-header h2{
  font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(2rem,5vw,3.1rem);
  font-weight:400;
  letter-spacing:.02em;
  margin-bottom:.4rem;
}
.tk-gastro-style-elegant .tk-gastro-header p{
  opacity:.68;
}
.tk-gastro-style-elegant .tk-gastro-brand-logo img{
  margin-inline:auto;
}
.tk-gastro-style-elegant .tk-gastro-category>h3{
  font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(1.45rem,3vw,2rem);
  font-weight:400;
  text-align:center;
  padding-bottom:.65rem;
  margin-bottom:.4rem;
  border-bottom-width:1px;
}
.tk-gastro-style-elegant .tk-gastro-item{
  padding:1.45rem .15rem;
}
.tk-gastro-style-elegant .tk-gastro-item-title{
  font-family:Georgia,"Times New Roman",serif;
  font-size:1.08em;
  font-weight:600;
}
.tk-gastro-style-elegant .tk-gastro-tags span{
  border-radius:2px;
  opacity:.82;
}

/* RUSTIKAL – warm, kräftiger, Gasthaus-Charakter */
.tk-gastro-style-rustic{
  padding:clamp(1.2rem,4vw,2.5rem);
  border:1px solid rgba(84,61,37,.28);
  border-radius:8px;
  background:#f7f1e5;
  box-shadow:inset 0 0 0 4px rgba(84,61,37,.035);
}
.tk-gastro-style-rustic .tk-gastro-header h2,
.tk-gastro-style-rustic .tk-gastro-category>h3,
.tk-gastro-style-rustic .tk-gastro-item-title{
  font-family:Georgia,"Times New Roman",serif;
}
.tk-gastro-style-rustic .tk-gastro-category>h3{
  border-bottom:2px solid var(--tk-gastro-accent);
}
.tk-gastro-style-rustic .tk-gastro-item{
  border-bottom-style:dashed;
}

/* MINIMAL – praktisch keine Dekoration */
.tk-gastro-style-minimal{
  background:transparent;
  border:0;
  box-shadow:none;
}
.tk-gastro-style-minimal .tk-gastro-header{
  margin-bottom:1.25rem;
}
.tk-gastro-style-minimal .tk-gastro-category>h3{
  border:0;
  padding-bottom:.25rem;
}
.tk-gastro-style-minimal .tk-gastro-filter-panel{
  border:0;
  border-radius:0;
  padding-left:0;
  padding-right:0;
  background:transparent;
}
.tk-gastro-style-minimal .tk-gastro-item{
  padding:1rem 0;
  border-bottom:1px solid rgba(0,0,0,.10);
}
.tk-gastro-style-minimal .tk-gastro-tags span{
  border:0;
  border-radius:0;
  padding-left:0;
  padding-right:.6rem;
}

/* Mobiler Filter: echte, gut bedienbare Klappe */
.tk-gastro-mobile-filter-toggle{
  display:none;
}

@media (max-width: 700px){
  .tk-gastro-mobile-filter-toggle{
    display:flex;
    width:100%;
    min-height:44px;
    align-items:center;
    justify-content:space-between;
    gap:.75rem;
    margin:0 0 .65rem;
    padding:.7rem .9rem;
    border:1px solid rgba(0,0,0,.18);
    border-radius:9px;
    background:#fff;
    color:inherit;
    font:inherit;
    font-weight:700;
    cursor:pointer;
  }
  .tk-gastro-mobile-filter-toggle::after{
    content:"＋";
    font-size:1.15em;
    line-height:1;
  }
  .tk-gastro-mobile-filter-toggle[aria-expanded="true"]::after{
    content:"−";
  }
  .tk-gastro-menu.tkg-mobile-filter-ready .tk-gastro-filter-panel{
    display:none;
  }
  .tk-gastro-menu.tkg-mobile-filter-ready .tk-gastro-filter-panel.is-open{
    display:block;
  }

  .tk-gastro-style-elegant{
    padding:1.35rem 1rem;
  }
  .tk-gastro-style-elegant .tk-gastro-header{
    margin-bottom:1.7rem;
  }
  .tk-gastro-style-elegant .tk-gastro-item{
    padding:1.25rem 0;
  }
}


/* TK Gastro v0.10.3 – nur EIN mobiler Filter-Button */
@media (max-width: 700px){
  /* Alter kompakter Trigger aus der bisherigen Filterdarstellung */
  .tk-gastro-menu.tkg-mobile-filter-ready .tk-gastro-filter-toggle,
  .tk-gastro-menu.tkg-mobile-filter-ready .tk-gastro-filter-button,
  .tk-gastro-menu.tkg-mobile-filter-ready button[data-tk-gastro-filter-toggle]{
    display:none !important;
  }

  /* Der neue Accordion-Trigger bleibt der einzige sichtbare Filter-Schalter */
  .tk-gastro-menu.tkg-mobile-filter-ready .tk-gastro-mobile-filter-toggle{
    display:flex !important;
  }
}


/* TK Gastro v0.10.4 – Mobile Stabilisierung */
.tk-gastro-menu,
.tk-gastro-menu *{
  box-sizing:border-box;
}
.tk-gastro-menu{
  width:100%;
  max-width:100%;
  overflow-x:hidden;
}
.tk-gastro-menu img{
  max-width:100%;
  height:auto;
}
.tk-gastro-item-main{
  min-width:0;
}
.tk-gastro-description,
.tk-gastro-item h4,
.tk-gastro-header h2,
.tk-gastro-category>h3{
  overflow-wrap:anywhere;
  word-break:normal;
}

/* Der alte Trigger darf nirgends mehr sichtbar sein */
.tk-filter-toggle{
  display:none !important;
}

@media (max-width:700px){
  .tk-gastro-menu{
    font-size:16px;
  }

  .tk-gastro-header h2,
  .tk-gastro-style-elegant .tk-gastro-header h2{
    font-size:clamp(1.65rem,8vw,2.1rem) !important;
    line-height:1.12 !important;
    max-width:100%;
  }

  .tk-gastro-category>h3,
  .tk-gastro-style-elegant .tk-gastro-category>h3{
    font-size:clamp(1.2rem,6vw,1.5rem) !important;
    line-height:1.2 !important;
    max-width:100%;
  }

  .tk-gastro-item h4,
  .tk-gastro-style-elegant .tk-gastro-item-title{
    font-size:1rem !important;
    line-height:1.25 !important;
  }

  .tk-gastro-description{
    font-size:.92rem !important;
    line-height:1.4 !important;
  }

  .tk-gastro-variant{
    font-size:.95rem;
  }

  .tk-gastro-style-elegant{
    width:100%;
    max-width:100%;
    padding:1.15rem .9rem !important;
    margin:0 !important;
  }

  .tk-gastro-style-elegant .tk-gastro-header{
    margin-bottom:1.5rem !important;
  }

  .tk-gastro-mobile-filter-toggle{
    width:100%;
    min-height:44px;
    font-size:.9rem !important;
    line-height:1.2 !important;
  }
}


/* TK Gastro v0.10.5 – frei wählbare Logo-Ausrichtung */
.tk-gastro-brand-logo.tk-gastro-logo-left{
  display:flex;
  justify-content:flex-start;
}
.tk-gastro-brand-logo.tk-gastro-logo-center{
  display:flex;
  justify-content:center;
}
.tk-gastro-brand-logo.tk-gastro-logo-right{
  display:flex;
  justify-content:flex-end;
}
.tk-gastro-brand-logo.tk-gastro-logo-left img,
.tk-gastro-brand-logo.tk-gastro-logo-center img,
.tk-gastro-brand-logo.tk-gastro-logo-right img{
  margin-left:0 !important;
  margin-right:0 !important;
}


/* TK Gastro 0.12.0 – Filter besser erkennbar */
.tk-gastro-filters button,
.tk-gastro-filter button,
.tk-gastro-filter-chip,
.tkg-filter {
    font-weight: 600;
    opacity: 1;
    border-width: 1px;
}
.tk-gastro-filters button:disabled,
.tk-gastro-filter button:disabled,
.tk-gastro-filter-chip:disabled,
.tkg-filter:disabled {
    opacity: .45;
}
#tk-gastro-reset-filters {
    display: none;
    margin-top: 12px;
    font-weight: 600;
}
#tk-gastro-reset-filters.is-visible {
    display: inline-flex;
}


/* v0.12.6 – klarere Filter- und Inhaltsdarstellung */
.tk-gastro-menu .tk-gastro-filter-panel{
  border:1px solid #c3c4c7;
  background:#fff;
  box-shadow:0 1px 3px rgba(0,0,0,.08);
  padding:.7rem .8rem;
}
.tk-gastro-menu .tk-gastro-filter-label{
  font-size:.82rem;
  font-weight:700;
  color:#3c434a;
}
.tk-gastro-menu .tk-gastro-filters button{
  background:#fff;
  color:#2c3338;
  border:1px solid #a7aaad;
  font-weight:600;
  padding:.38rem .65rem;
}
.tk-gastro-menu .tk-gastro-filters button:hover{
  border-color:var(--tk-gastro-accent);
  color:var(--tk-gastro-accent);
}
.tk-gastro-menu .tk-gastro-filters button.is-active{
  background:var(--tk-gastro-accent);
  border-color:var(--tk-gastro-accent);
  color:#fff;
}
.tk-gastro-content-traits{
  margin:.15rem 0 .45rem;
  font-size:.88rem;
  color:#50575e;
}

/* v0.13.3: Kennzeichnungen und moderne Kartenoptik */
.tk-gastro-category>h3{color:var(--tk-gastro-accent,currentColor);margin-top:2.4rem}
.tk-gastro-item{padding:1.15rem 1rem;margin:.35rem 0;border:1px solid #e7e7e7;border-radius:10px;background:#fff}
.tk-gastro-item h4{font-weight:700}
.tk-gastro-meta{margin-top:.75rem;padding-top:.55rem;border-top:1px dashed #e2e2e2;gap:.3rem}
.tk-gastro-tags span{background:color-mix(in srgb,var(--tk-gastro-accent,#1d2327) 8%,white);border-color:color-mix(in srgb,var(--tk-gastro-accent,#1d2327) 28%,#ddd);font-weight:600}
.tk-gastro-filter-label{font-weight:700}
@media(max-width:640px){.tk-gastro-item{padding:1rem .85rem}.tk-gastro-filter-panel{padding:.8rem}.tk-gastro-meta{font-size:.74rem}}


/* v0.13.4 – eindeutige Ein-/Ausschlussfilter */
.tk-gastro-menu .tk-filter-state{display:none;font-weight:800;margin-right:.28rem;line-height:1}
.tk-gastro-menu .tk-filter.is-active .tk-filter-state{display:inline-block}
.tk-gastro-menu .tk-gastro-filters button.is-active{
  background:#1f5f99 !important;
  border-color:#1f5f99 !important;
  color:#fff !important;
  box-shadow:0 0 0 2px rgba(31,95,153,.14);
}
.tk-gastro-menu .tk-filter-exclude.is-active{
  background:#1f5f99 !important;
  border-color:#1f5f99 !important;
  color:#fff !important;
}
.tk-gastro-menu .tk-filter-exclude.is-active .tk-filter-state{font-size:1.08em}

/* ==========================================================
   TK Gastro v0.13.6 – Kompakte Frontend-Karte + Details
   ========================================================== */
.tk-gastro-quick-tags{
  display:flex;
  flex-wrap:wrap;
  gap:.3rem;
  margin:.45rem 0 0;
}
.tk-gastro-quick-tag{
  display:inline-flex;
  align-items:center;
  min-height:24px;
  padding:.14rem .44rem;
  border:1px solid #dcdcde;
  border-radius:999px;
  background:rgba(255,255,255,.72);
  color:#50575e;
  font-size:.72rem;
  font-weight:600;
  line-height:1.15;
}
.tk-gastro-quick-tag-trait{
  border-color:color-mix(in srgb, var(--tk-gastro-accent) 35%, #dcdcde);
}
.tk-gastro-quick-tag-allergen{font-weight:700}
.tk-gastro-quick-tag-additive{font-weight:600}

.tk-gastro-details{
  margin-top:.55rem;
  padding-top:.45rem;
  border-top:1px dashed rgba(0,0,0,.10);
}
.tk-gastro-details summary{
  display:inline-flex;
  align-items:center;
  gap:.35rem;
  cursor:pointer;
  color:#646970;
  font-size:.78rem;
  font-weight:600;
  list-style:none;
  user-select:none;
}
.tk-gastro-details summary::-webkit-details-marker{display:none}
.tk-gastro-details summary::before{
  content:'+';
  display:inline-grid;
  place-items:center;
  width:1.1rem;
  height:1.1rem;
  border:1px solid #c3c4c7;
  border-radius:50%;
  font-size:.82rem;
  line-height:1;
}
.tk-gastro-details[open] summary::before{content:'−'}
.tk-gastro-details-content{
  margin-top:.5rem;
  padding:.6rem .7rem;
  border-radius:8px;
  background:rgba(0,0,0,.025);
  color:#50575e;
  font-size:.82rem;
  line-height:1.45;
}
.tk-gastro-details-content p{margin:.2rem 0 .45rem}
.tk-gastro-details-content p:last-child{margin-bottom:.2rem}
.tk-gastro-details .tk-gastro-components{margin:.2rem 0 .45rem;font-size:inherit;color:inherit}

@media(max-width:640px){
  .tk-gastro-quick-tags{margin-top:.35rem}
  .tk-gastro-quick-tag{font-size:.7rem;min-height:22px}
  .tk-gastro-details-content{font-size:.8rem}
}


/* TK Gastro v0.14.0 – Kategorienavigation & optionale Produktbilder */
.tk-gastro-category-nav{
  position:sticky;top:0;z-index:20;display:flex;gap:.45rem;overflow-x:auto;
  margin:1rem 0 1.25rem;padding:.55rem .2rem;scrollbar-width:thin;
  background:color-mix(in srgb, #fff 94%, var(--tk-gastro-accent, #2271b1) 6%);
  border-block:1px solid rgba(0,0,0,.07);-webkit-overflow-scrolling:touch;
}
.tk-gastro-category-link{
  flex:0 0 auto;text-decoration:none!important;border:1px solid #dcdcde;border-radius:999px;
  padding:.42rem .72rem;background:#fff;color:#2c3338!important;font-size:.82rem;font-weight:650;line-height:1.1;
}
.tk-gastro-category-link:hover,.tk-gastro-category-link:focus,.tk-gastro-category-link.is-active{
  background:var(--tk-gastro-accent,#2271b1);border-color:var(--tk-gastro-accent,#2271b1);color:#fff!important;
}
.tk-gastro-category{scroll-margin-top:4.25rem}
.tk-gastro-item.has-image{display:grid;grid-template-columns:150px minmax(0,1fr);gap:1rem;overflow:hidden}
.tk-gastro-item-image{min-height:120px}
.tk-gastro-product-image{display:block;width:100%;height:100%;max-height:180px;object-fit:cover;border-radius:10px}
.tk-gastro-item-body{min-width:0}
.tk-gastro-details summary{padding:.18rem .1rem;min-height:30px}
@media(max-width:640px){
  .tk-gastro-category-nav{margin:.75rem -.25rem 1rem;padding:.48rem .25rem;top:0}
  .tk-gastro-category-link{font-size:.78rem;padding:.4rem .65rem}
  .tk-gastro-category{scroll-margin-top:3.7rem}
  .tk-gastro-item{padding:.65rem .7rem}
  .tk-gastro-item.has-image{grid-template-columns:92px minmax(0,1fr);gap:.7rem}
  .tk-gastro-item-image{min-height:86px}
  .tk-gastro-product-image{height:92px;max-height:none;border-radius:8px}
  .tk-gastro-details{margin-top:.35rem;padding-top:.3rem}
}
@media(max-width:390px){
  .tk-gastro-item.has-image{grid-template-columns:1fr}
  .tk-gastro-product-image{height:170px}
}


/* ==========================================================
   TK Gastro v0.15.0 – Mobile-first Frontend Redesign
   ========================================================== */
.tk-gastro-menu{
  --tkg-surface:#ffffff;
  --tkg-surface-soft:#f6f7f8;
  --tkg-border:rgba(31,41,55,.11);
  --tkg-text:#1f2937;
  --tkg-muted:#667085;
  --tkg-shadow:0 8px 24px rgba(17,24,39,.055);
  color:var(--tkg-text);
}

/* Header: bewusst ruhig, aber eindeutig */
.tk-gastro-menu .tk-gastro-header{
  margin:0 0 1rem;
}
.tk-gastro-menu .tk-gastro-header h2{
  margin:0 0 .28rem;
  font-size:clamp(1.65rem,4vw,2.25rem);
  line-height:1.12;
  letter-spacing:-.025em;
}
.tk-gastro-menu .tk-gastro-header p{
  max-width:70ch;
  color:var(--tkg-muted);
  line-height:1.5;
}

/* Filter als eigener Werkzeugbereich statt Teil der Produktliste */
.tk-gastro-menu .tk-gastro-mobile-filter-toggle{
  border:1px solid var(--tkg-border);
  border-radius:12px;
  background:var(--tkg-surface);
  box-shadow:0 2px 8px rgba(17,24,39,.03);
  min-height:46px;
  padding:.7rem .85rem;
}
.tk-gastro-menu .tk-gastro-filter-panel{
  border:1px solid var(--tkg-border);
  background:var(--tkg-surface-soft);
  border-radius:14px;
  padding:.75rem;
}
.tk-gastro-menu .tk-gastro-filter-label{
  color:var(--tkg-muted);
  font-size:.73rem;
  letter-spacing:.01em;
}
.tk-gastro-menu .tk-gastro-filters button{
  border-color:rgba(31,41,55,.14);
  background:#fff;
  color:#344054;
  font-weight:650;
}

/* Sticky Kategorien: echte Navigation, nicht nur Links */
.tk-gastro-menu .tk-gastro-category-nav{
  position:sticky;
  top:0;
  z-index:30;
  display:flex;
  gap:.42rem;
  overflow-x:auto;
  margin:.85rem 0 1.1rem;
  padding:.52rem .18rem;
  background:rgba(255,255,255,.96);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
  border-top:1px solid var(--tkg-border);
  border-bottom:1px solid var(--tkg-border);
  scrollbar-width:none;
  -webkit-overflow-scrolling:touch;
}
.tk-gastro-menu .tk-gastro-category-nav::-webkit-scrollbar{display:none}
.tk-gastro-menu .tk-gastro-category-link{
  flex:0 0 auto;
  display:inline-flex;
  align-items:center;
  min-height:38px;
  padding:.46rem .72rem;
  border:1px solid var(--tkg-border);
  border-radius:10px;
  background:#fff;
  color:#475467!important;
  text-decoration:none!important;
  font-size:.8rem;
  font-weight:700;
  line-height:1;
  box-shadow:0 1px 2px rgba(17,24,39,.02);
  transition:background-color .15s ease,border-color .15s ease,color .15s ease,transform .15s ease;
}
.tk-gastro-menu .tk-gastro-category-link:hover,
.tk-gastro-menu .tk-gastro-category-link:focus{
  border-color:color-mix(in srgb,var(--tk-gastro-accent,#2271b1) 42%,#d0d5dd);
  color:var(--tk-gastro-accent,#2271b1)!important;
}
.tk-gastro-menu .tk-gastro-category-link.is-active{
  background:var(--tk-gastro-accent,#2271b1);
  border-color:var(--tk-gastro-accent,#2271b1);
  color:#fff!important;
  box-shadow:0 5px 12px color-mix(in srgb,var(--tk-gastro-accent,#2271b1) 18%,transparent);
}

/* Kategorie = eigener Abschnitt mit klarer visueller Hierarchie */
.tk-gastro-menu .tk-gastro-category{
  margin:1.35rem 0 2rem;
  scroll-margin-top:4.7rem;
}
.tk-gastro-menu .tk-gastro-category>h3{
  display:flex;
  align-items:center;
  gap:.6rem;
  margin:0 0 .7rem;
  padding:0;
  border:0;
  color:var(--tkg-text);
  font-size:clamp(1.22rem,3vw,1.48rem);
  font-weight:800;
  line-height:1.2;
  letter-spacing:-.015em;
}
.tk-gastro-menu .tk-gastro-category>h3::after{
  content:"";
  height:2px;
  flex:1 1 auto;
  background:linear-gradient(90deg,color-mix(in srgb,var(--tk-gastro-accent,#2271b1) 60%,#fff),transparent);
  opacity:.5;
}

/* Produkt: kleine, hochwertige Karte statt Tabellenzeile */
.tk-gastro-menu .tk-gastro-item{
  margin:0 0 .58rem;
  padding:.78rem .86rem;
  border:1px solid var(--tkg-border);
  border-radius:14px;
  background:var(--tkg-surface);
  box-shadow:0 2px 7px rgba(17,24,39,.025);
  transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease;
}
.tk-gastro-menu .tk-gastro-item:hover{
  border-color:rgba(31,41,55,.17);
  box-shadow:var(--tkg-shadow);
}
.tk-gastro-menu .tk-gastro-item-main{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:.65rem 1rem;
  align-items:start;
}
.tk-gastro-menu .tk-gastro-item h4{
  margin:0;
  color:var(--tkg-text);
  font-size:1rem;
  font-weight:780;
  line-height:1.28;
  letter-spacing:-.008em;
}
.tk-gastro-menu .tk-gastro-description{
  margin:.26rem 0 0;
  color:var(--tkg-muted);
  font-size:.88rem;
  line-height:1.42;
}
.tk-gastro-menu .tk-gastro-variants{
  display:flex;
  flex-direction:column;
  gap:.24rem;
  min-width:max-content;
}
.tk-gastro-menu .tk-gastro-variant{
  display:grid;
  grid-template-columns:auto auto;
  align-items:baseline;
  justify-content:end;
  gap:.48rem;
  color:var(--tkg-muted);
  font-size:.78rem;
}
.tk-gastro-menu .tk-gastro-variant strong{
  display:inline-flex;
  align-items:center;
  min-height:30px;
  padding:.25rem .52rem;
  border-radius:8px;
  background:color-mix(in srgb,var(--tk-gastro-accent,#2271b1) 8%,#fff);
  color:var(--tkg-text);
  font-size:.91rem;
  font-weight:800;
  white-space:nowrap;
}
.tk-gastro-menu .tk-gastro-variant.is-single-price{
  display:flex;
  justify-content:flex-end;
}
.tk-gastro-menu .tk-gastro-no-price{
  color:var(--tkg-muted);
  font-size:.82rem;
  font-style:italic;
}

/* Kennzeichnungen dezent, Details klar aber sekundär */
.tk-gastro-menu .tk-gastro-quick-tags{
  margin:.42rem 0 0;
  gap:.28rem;
}
.tk-gastro-menu .tk-gastro-quick-tag{
  min-height:22px;
  padding:.12rem .4rem;
  border-color:rgba(31,41,55,.11);
  background:#f8fafc;
  color:#667085;
  font-size:.68rem;
  font-weight:700;
}
.tk-gastro-menu .tk-gastro-details{
  margin:.55rem 0 0;
  padding:.45rem 0 0;
  border-top:1px solid rgba(31,41,55,.07);
}
.tk-gastro-menu .tk-gastro-details summary{
  width:max-content;
  min-height:30px;
  padding:.1rem 0;
  color:#667085;
  font-size:.76rem;
  font-weight:700;
}
.tk-gastro-menu .tk-gastro-details summary::before{
  width:1rem;
  height:1rem;
  border:0;
  background:#f2f4f7;
  color:#667085;
  font-size:.78rem;
}
.tk-gastro-menu .tk-gastro-details-content{
  margin-top:.42rem;
  padding:.62rem .72rem;
  border:1px solid rgba(31,41,55,.07);
  border-radius:10px;
  background:#f8fafc;
  color:#667085;
  font-size:.79rem;
}

/* Bildprodukte: Bild als Verkaufsfläche, ohne Bilder bleibt alles kompakt */
.tk-gastro-menu .tk-gastro-item.has-image{
  display:grid;
  grid-template-columns:132px minmax(0,1fr);
  gap:.8rem;
  align-items:stretch;
  padding:.65rem;
  overflow:hidden;
}
.tk-gastro-menu .tk-gastro-item-image{
  min-height:112px;
  border-radius:11px;
  overflow:hidden;
  background:#f2f4f7;
}
.tk-gastro-menu .tk-gastro-product-image{
  display:block;
  width:100%;
  height:100%;
  min-height:112px;
  max-height:168px;
  object-fit:cover;
  border-radius:0;
}

/* Presets dürfen Typografie variieren, Layout bleibt konsistent */
.tk-gastro-style-modern,
.tk-gastro-style-elegant,
.tk-gastro-style-rustic{
  box-shadow:none;
}
.tk-gastro-style-modern,
.tk-gastro-style-elegant{
  border-color:transparent;
}
.tk-gastro-style-elegant .tk-gastro-category>h3{text-align:left}

@media(max-width:700px){
  .tk-gastro-menu{
    width:100%;
  }
  .tk-gastro-menu .tk-gastro-header{
    margin-bottom:.72rem;
  }
  .tk-gastro-menu .tk-gastro-header h2{
    font-size:1.52rem;
  }
  .tk-gastro-menu .tk-gastro-category-nav{
    margin:.62rem -.35rem .9rem;
    padding:.46rem .35rem;
  }
  .tk-gastro-menu .tk-gastro-category-link{
    min-height:36px;
    padding:.44rem .66rem;
    border-radius:9px;
    font-size:.77rem;
  }
  .tk-gastro-menu .tk-gastro-category{
    margin:1rem 0 1.55rem;
    scroll-margin-top:4.3rem;
  }
  .tk-gastro-menu .tk-gastro-category>h3{
    margin-bottom:.58rem;
    font-size:1.14rem;
  }
  .tk-gastro-menu .tk-gastro-item{
    margin-bottom:.46rem;
    padding:.68rem .72rem;
    border-radius:12px;
  }
  .tk-gastro-menu .tk-gastro-item-main{
    grid-template-columns:minmax(0,1fr) auto;
    gap:.5rem .7rem;
  }
  .tk-gastro-menu .tk-gastro-item h4{
    font-size:.94rem;
  }
  .tk-gastro-menu .tk-gastro-description{
    font-size:.82rem;
    line-height:1.38;
  }
  .tk-gastro-menu .tk-gastro-variant strong{
    min-height:28px;
    padding:.22rem .44rem;
    font-size:.84rem;
  }
  .tk-gastro-menu .tk-gastro-details{
    margin-top:.42rem;
    padding-top:.34rem;
  }
  .tk-gastro-menu .tk-gastro-details summary{
    min-height:28px;
    font-size:.72rem;
  }
  .tk-gastro-menu .tk-gastro-details-content{
    font-size:.76rem;
  }
  .tk-gastro-menu .tk-gastro-item.has-image{
    grid-template-columns:100px minmax(0,1fr);
    gap:.66rem;
    padding:.58rem;
  }
  .tk-gastro-menu .tk-gastro-item-image,
  .tk-gastro-menu .tk-gastro-product-image{
    min-height:96px;
  }
}

@media(max-width:390px){
  .tk-gastro-menu .tk-gastro-item-main{
    grid-template-columns:minmax(0,1fr) auto;
  }
  .tk-gastro-menu .tk-gastro-item.has-image{
    grid-template-columns:1fr;
  }
  .tk-gastro-menu .tk-gastro-product-image{
    height:170px;
    max-height:none;
  }
}


/* ==========================================================
   TK Gastro v0.15.1 – Scroll-/Navigations-Stabilität
   Keine sticky Navigation und keine scroll-beeinflussenden Effekte.
   ========================================================== */
.tk-gastro-menu .tk-gastro-category-nav{
  position:relative !important;
  top:auto !important;
  z-index:5;
  overflow-x:auto;
  overflow-y:hidden;
  overscroll-behavior-x:contain;
  -webkit-overflow-scrolling:touch;
  touch-action:pan-x pan-y;
  backdrop-filter:none;
  -webkit-backdrop-filter:none;
}
.tk-gastro-menu .tk-gastro-category{
  scroll-margin-top:1rem !important;
}
.tk-gastro-menu .tk-gastro-category-link{
  scroll-margin:0;
}
@media(max-width:700px){
  .tk-gastro-menu .tk-gastro-category-nav{
    position:relative !important;
    top:auto !important;
    margin:.62rem -.15rem .9rem;
    padding:.46rem .15rem;
  }
  .tk-gastro-menu .tk-gastro-category{
    scroll-margin-top:.75rem !important;
  }
}

/* ==========================================================
   TK Gastro v0.16.1 – Responsive Bildkarten
   Desktop/Tablet: großzügiges Bild links.
   Mobile: Bild als volle Verkaufsfläche oberhalb des Inhalts.
   ========================================================== */
.tk-gastro-menu .tk-gastro-item.has-image{
  grid-template-columns:minmax(220px,32%) minmax(0,1fr);
  gap:1rem;
  padding:.72rem;
  align-items:stretch;
}
.tk-gastro-menu .tk-gastro-item.has-image .tk-gastro-item-image{
  min-height:170px;
  border-radius:12px;
  overflow:hidden;
  background:#f2f4f7;
}
.tk-gastro-menu .tk-gastro-item.has-image .tk-gastro-product-image{
  display:block;
  width:100%;
  height:100%;
  min-height:170px;
  max-height:230px;
  object-fit:cover;
  object-position:center;
}
.tk-gastro-menu .tk-gastro-item.has-image .tk-gastro-item-body{
  display:flex;
  flex-direction:column;
  justify-content:center;
  min-width:0;
  padding:.08rem .1rem;
}

@media(max-width:700px){
  .tk-gastro-menu .tk-gastro-item.has-image{
    display:block;
    padding:0;
    overflow:hidden;
  }
  .tk-gastro-menu .tk-gastro-item.has-image .tk-gastro-item-image{
    width:100%;
    min-height:0;
    aspect-ratio:16/9;
    border-radius:0;
  }
  .tk-gastro-menu .tk-gastro-item.has-image .tk-gastro-product-image{
    width:100%;
    height:100%;
    min-height:0;
    max-height:none;
    aspect-ratio:16/9;
    object-fit:cover;
    object-position:center;
    border-radius:0;
  }
  .tk-gastro-menu .tk-gastro-item.has-image .tk-gastro-item-body{
    display:block;
    padding:.78rem .82rem .8rem;
  }
}

/* ==========================================================
   TK Gastro v0.16.3 – Kontrastfeste Navigation
   Kategorienlinks bleiben auch bei sehr heller/weißer Branding-
   Akzentfarbe und bei Theme-Linkregeln zuverlässig lesbar.
   ========================================================== */
.tk-gastro-menu .tk-gastro-category-link,
.tk-gastro-menu .tk-gastro-category-link:visited{
  color:#344054 !important;
  background:#ffffff !important;
  border-color:#d0d5dd !important;
  text-decoration:none !important;
}
.tk-gastro-menu .tk-gastro-category-link:hover,
.tk-gastro-menu .tk-gastro-category-link:focus-visible{
  color:#174ea6 !important;
  background:#f5f8ff !important;
  border-color:#84a9e8 !important;
  outline:none;
}
.tk-gastro-menu .tk-gastro-category-link.is-active,
.tk-gastro-menu .tk-gastro-category-link.is-active:visited,
.tk-gastro-menu .tk-gastro-category-link.is-active:hover,
.tk-gastro-menu .tk-gastro-category-link.is-active:focus-visible{
  color:#ffffff !important;
  background:#174ea6 !important;
  border-color:#174ea6 !important;
  box-shadow:0 4px 12px rgba(23,78,166,.18);
}

/* ==========================================================
   TK Gastro v0.17.1 – Responsive Breitenfix für sehr viele Kategorien
   Der Kategorienbereich darf horizontal scrollen, die Seite selbst nie.
   ========================================================== */
.tk-gastro-menu{
  width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
  overflow-x:hidden !important;
}
.tk-gastro-menu > *,
.tk-gastro-menu .tk-gastro-header,
.tk-gastro-menu .tk-gastro-filter-wrap,
.tk-gastro-menu .tk-gastro-filter-panel,
.tk-gastro-menu .tk-gastro-category,
.tk-gastro-menu .tk-gastro-item,
.tk-gastro-menu .tk-gastro-item-body,
.tk-gastro-menu .tk-gastro-item-main{
  min-width:0;
  max-width:100%;
}
.tk-gastro-menu .tk-gastro-category-nav{
  width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
  overflow-x:auto !important;
  overflow-y:hidden !important;
  white-space:nowrap;
  flex-wrap:nowrap !important;
  overscroll-behavior-x:contain;
  -webkit-overflow-scrolling:touch;
  scrollbar-width:thin;
  touch-action:pan-x pan-y;
}
.tk-gastro-menu .tk-gastro-category-link{
  flex:0 0 auto !important;
  max-width:min(82vw,320px);
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.tk-gastro-menu .tk-gastro-item-main > *,
.tk-gastro-menu .tk-gastro-description,
.tk-gastro-menu .tk-gastro-components,
.tk-gastro-menu .tk-gastro-meta,
.tk-gastro-menu .tk-gastro-variants{
  min-width:0;
  max-width:100%;
}
.tk-gastro-menu .tk-gastro-description,
.tk-gastro-menu .tk-gastro-components,
.tk-gastro-menu .tk-gastro-meta{
  overflow-wrap:anywhere;
}
@media(max-width:700px){
  .tk-gastro-menu .tk-gastro-category-nav{
    margin:.62rem 0 .9rem !important;
    padding:.46rem 0 !important;
  }
  .tk-gastro-menu .tk-gastro-category-link{
    max-width:78vw;
  }
}

/* v0.18.2: Auswahlregeln bereits in der kompakten Kartenansicht sichtbar */
.tk-gastro-selection-summary{margin:.38rem 0 0;color:#42546a;font-size:.92em;line-height:1.35}
.tk-gastro-selection-summary strong{color:inherit}


/* ==========================================================
   TK Gastro v0.19.0 – Mobile UX & Sticky Kategorienavigation
   ========================================================== */
.tk-gastro-menu .tk-gastro-category-nav{
  position:relative !important;
  top:auto !important;
  z-index:45 !important;
  margin:.7rem 0 1rem !important;
  padding:.48rem .2rem !important;
  background:rgba(255,255,255,.97) !important;
  border-top:1px solid rgba(31,41,55,.08) !important;
  border-bottom:1px solid rgba(31,41,55,.10) !important;
  box-shadow:0 5px 14px rgba(17,24,39,.06);
  backdrop-filter:blur(12px) !important;
  -webkit-backdrop-filter:blur(12px) !important;
  scrollbar-width:none !important;
}
.tk-gastro-menu .tk-gastro-category-nav::-webkit-scrollbar{display:none}
.tk-gastro-menu .tk-gastro-category{
  scroll-margin-top:calc(var(--tkg-sticky-top,0px) + var(--tkg-nav-height,54px) + 14px) !important;
}
.tk-gastro-menu .tk-gastro-category-link{
  min-height:40px;
  padding:.48rem .76rem;
  font-size:.82rem;
  border-radius:11px;
}
.tk-gastro-menu .tk-gastro-selection-summary{
  display:inline-flex;
  align-items:center;
  margin:.34rem 0 0;
  padding:.18rem .48rem;
  border-radius:999px;
  background:color-mix(in srgb,var(--tk-gastro-accent,#2271b1) 7%,#fff);
  color:#42546a;
  font-size:.82rem;
  font-weight:700;
  line-height:1.35;
}
.tk-gastro-menu .tk-gastro-selection-group{
  margin:.15rem 0 .25rem;
}
.tk-gastro-menu .tk-gastro-selection-heading{
  display:block;
  margin:0 0 .5rem;
  color:#344054;
  font-size:.9rem;
  line-height:1.35;
}
.tk-gastro-menu .tk-gastro-selection-options{
  display:flex;
  flex-wrap:wrap;
  gap:.34rem;
}
.tk-gastro-menu .tk-gastro-selection-option{
  display:inline-flex;
  align-items:center;
  min-height:29px;
  padding:.28rem .5rem;
  border:1px solid #d9dee7;
  border-radius:999px;
  background:#fff;
  color:#56657a;
  font-size:.76rem;
  line-height:1.2;
}

@media(max-width:700px){
  .tk-gastro-menu .tk-gastro-category-nav{
    margin:.45rem 0 .78rem !important;
    padding:.4rem 0 !important;
  }
  .tk-gastro-menu .tk-gastro-category-link{
    min-height:38px;
    padding:.44rem .68rem;
    font-size:.78rem;
  }
  .tk-gastro-menu .tk-gastro-category{
    margin:.88rem 0 1.25rem;
  }
  .tk-gastro-menu .tk-gastro-item{
    margin-bottom:.46rem;
    padding:.7rem .74rem;
    border-radius:13px;
  }
  .tk-gastro-menu .tk-gastro-item-main{
    gap:.5rem .7rem;
  }
  .tk-gastro-menu .tk-gastro-item h4{
    font-size:1rem;
  }
  .tk-gastro-menu .tk-gastro-description{
    margin-top:.2rem;
    line-height:1.38;
  }
  .tk-gastro-menu .tk-gastro-details{
    margin-top:.42rem;
    padding-top:.34rem;
  }
  .tk-gastro-menu .tk-gastro-details summary{
    min-height:32px;
    font-size:.78rem;
  }
  .tk-gastro-menu .tk-gastro-details-content{
    padding:.66rem;
  }
  .tk-gastro-menu .tk-gastro-selection-summary{
    font-size:.79rem;
  }
}


/* ==========================================================
   TK Gastro v0.20.0 – Gast-Navigation für große Speisekarten
   Kategorien + Filter bleiben als gemeinsame Bedienzone erreichbar.
   ========================================================== */
.tk-gastro-menu .tk-gastro-guest-toolbar{
  position:relative;
  top:auto;
  z-index:50;
  margin:.7rem 0 1rem;
  padding:.42rem .5rem .5rem;
  background:rgba(255,255,255,.97);
  border:1px solid rgba(31,41,55,.10);
  border-radius:14px;
  box-shadow:0 7px 20px rgba(17,24,39,.08);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
}
.tk-gastro-menu .tk-gastro-guest-toolbar .tk-gastro-filter-wrap{margin:0 0 .35rem}
.tk-gastro-menu .tk-gastro-guest-toolbar .tk-gastro-category-nav{
  position:static !important;
  top:auto !important;
  z-index:auto !important;
  margin:0 !important;
  padding:.34rem 0 0 !important;
  border:0 !important;
  border-top:1px solid rgba(31,41,55,.08) !important;
  box-shadow:none !important;
  background:transparent !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
}
.tk-gastro-menu .tk-gastro-guest-toolbar .tk-gastro-filter-topline{margin:0;justify-content:flex-start}
.tk-gastro-menu .tk-gastro-guest-toolbar .tk-gastro-mobile-filter-toggle{
  display:inline-flex;align-items:center;min-height:38px;border:1px solid #c3c4c7;background:#fff;
  border-radius:999px;padding:.42rem .72rem;font:inherit;font-size:.8rem;cursor:pointer
}
.tk-gastro-menu .tk-gastro-guest-toolbar .tk-gastro-filter-panel{margin-top:.4rem}
.tk-gastro-menu .tk-gastro-category{
  scroll-margin-top:calc(var(--tkg-sticky-top,0px) + var(--tkg-toolbar-height,100px) + 14px) !important;
}
@media(max-width:900px){
  .tk-gastro-menu .tk-gastro-guest-toolbar{margin:.45rem 0 .78rem;padding:.38rem .42rem;border-radius:12px}
  .tk-gastro-menu .tk-gastro-guest-toolbar .tk-gastro-filter-panel{display:none;border-radius:10px;padding:.65rem}
  .tk-gastro-menu .tk-gastro-guest-toolbar .tk-gastro-filter-panel.is-open{display:block}
  .tk-gastro-menu .tk-gastro-guest-toolbar .tk-gastro-filter-group{display:block;margin:.35rem 0 .55rem}
  .tk-gastro-menu .tk-gastro-guest-toolbar .tk-gastro-filter-label{display:block;margin-bottom:.25rem}
  .tk-gastro-menu .tk-gastro-guest-toolbar .tk-filter-separator{display:none}
}


/* ==========================================================
   TK Gastro v0.20.1 – stabile Sticky-Leiste + kompakte Tablet-Navigation
   overflow-x:clip verhindert, dass der Menü-Container zum Scroll-Container
   wird und dadurch position:sticky in Safari/iPadOS verliert.
   ========================================================== */
.tk-gastro-menu{
  overflow-x:clip !important;
}
.tk-gastro-menu .tk-gastro-guest-toolbar{
  position:relative !important;
  top:auto !important;
  z-index:100 !important;
}
.tk-gastro-menu .tk-gastro-toolbar-actions{
  display:none;
}

@media(max-width:900px){
  .tk-gastro-menu .tk-gastro-guest-toolbar{
    padding:.42rem !important;
    box-shadow:0 8px 24px rgba(17,24,39,.14) !important;
  }
  .tk-gastro-menu .tk-gastro-toolbar-actions{
    display:flex;
    align-items:center;
    gap:.42rem;
    min-height:42px;
  }
  .tk-gastro-menu .tk-gastro-category-toggle,
  .tk-gastro-menu .tk-gastro-mobile-filter-toggle,
  .tk-gastro-menu .tk-filter-reset{
    display:inline-flex !important;
    align-items:center;
    justify-content:center;
    min-height:38px;
    margin:0 !important;
    padding:.42rem .72rem !important;
    border:1px solid #cbd2dc !important;
    border-radius:999px !important;
    background:#fff !important;
    color:#344054 !important;
    font:inherit;
    font-size:.8rem !important;
    font-weight:700;
    line-height:1.1;
    text-decoration:none !important;
    cursor:pointer;
  }
  .tk-gastro-menu .tk-gastro-category-toggle::before{content:'☰';margin-right:.38rem}
  .tk-gastro-menu .tk-gastro-mobile-filter-toggle::before{content:'⚙';margin-right:.38rem}
  .tk-gastro-menu .tk-gastro-category-toggle.is-active,
  .tk-gastro-menu .tk-gastro-mobile-filter-toggle.is-active{
    background:var(--tk-gastro-accent,#174ea6) !important;
    border-color:var(--tk-gastro-accent,#174ea6) !important;
    color:#fff !important;
  }
  .tk-gastro-menu .tk-filter-reset[hidden]{display:none !important}
  .tk-gastro-menu .tk-filter-reset:not([hidden]){margin-left:auto !important}

  .tk-gastro-menu .tk-gastro-guest-toolbar .tk-gastro-filter-wrap{
    margin:0 !important;
  }
  .tk-gastro-menu .tk-gastro-guest-toolbar .tk-gastro-filter-panel{
    display:none !important;
    max-height:min(58vh,520px);
    overflow-y:auto;
    margin:.42rem 0 0 !important;
    padding:.7rem !important;
    border:1px solid #e1e5eb !important;
    background:#fff !important;
  }
  .tk-gastro-menu .tk-gastro-guest-toolbar .tk-gastro-filter-panel.is-open{
    display:block !important;
  }

  .tk-gastro-menu .tk-gastro-guest-toolbar .tk-gastro-category-nav{
    display:none !important;
    width:100% !important;
    max-height:min(55vh,480px);
    margin:.42rem 0 0 !important;
    padding:.42rem !important;
    overflow-y:auto !important;
    overflow-x:hidden !important;
    white-space:normal !important;
    flex-wrap:wrap !important;
    gap:.38rem !important;
    border:1px solid #e1e5eb !important;
    border-radius:10px !important;
    background:#fff !important;
  }
  .tk-gastro-menu .tk-gastro-guest-toolbar .tk-gastro-category-nav.is-open{
    display:flex !important;
  }
  .tk-gastro-menu .tk-gastro-category-link{
    max-width:100% !important;
    white-space:normal !important;
    overflow:visible !important;
    text-overflow:clip !important;
  }
  .tk-gastro-menu .tk-gastro-category{
    scroll-margin-top:calc(var(--tkg-sticky-top,0px) + 68px) !important;
  }
}

/* ==========================================================
   TK Gastro v0.21.0 – visuelle Produktkarten
   Lange Speisekarten werden auf Tablet/Desktop als kompaktes
   Kartenraster dargestellt. Bilder erhalten echte Verkaufsfläche;
   Produkte ohne Bild bleiben bewusst kompakt und funktional.
   ========================================================== */
.tk-gastro-menu .tk-gastro-products{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:.78rem;
  align-items:start;
}
.tk-gastro-menu .tk-gastro-products .tk-gastro-item{
  margin:0;
  min-height:0;
  padding:.82rem .88rem;
  border:1px solid #e3e7ed;
  border-radius:16px;
  background:#fff;
  box-shadow:0 2px 8px rgba(17,24,39,.045);
}
.tk-gastro-menu .tk-gastro-products .tk-gastro-item:hover{
  transform:none;
  box-shadow:0 5px 16px rgba(17,24,39,.075);
}
.tk-gastro-menu .tk-gastro-products .tk-gastro-item-main{
  grid-template-columns:minmax(0,1fr) auto;
  gap:.6rem .75rem;
}
.tk-gastro-menu .tk-gastro-products .tk-gastro-item h4{
  font-size:1rem;
  line-height:1.3;
}
.tk-gastro-menu .tk-gastro-products .tk-gastro-description{
  margin:.22rem 0 0;
  font-size:.86rem;
  line-height:1.42;
  color:#667085;
}
.tk-gastro-menu .tk-gastro-products .tk-gastro-variants{
  min-width:0;
}
.tk-gastro-menu .tk-gastro-products .tk-gastro-variant{
  justify-content:flex-end;
}
.tk-gastro-menu .tk-gastro-products .tk-gastro-variant strong{
  white-space:nowrap;
}

/* Bildkarten: Foto oben, Inhalt darunter. So bleibt das Motiv auf
   Tablet und Desktop groß genug, um Appetit zu machen. */
.tk-gastro-menu .tk-gastro-products .tk-gastro-item.has-image{
  display:block;
  padding:0;
  overflow:hidden;
}
.tk-gastro-menu .tk-gastro-products .tk-gastro-item.has-image .tk-gastro-item-image{
  width:100%;
  min-height:0;
  aspect-ratio:4/3;
  overflow:hidden;
  border-radius:0;
  background:#f2f4f7;
}
.tk-gastro-menu .tk-gastro-products .tk-gastro-item.has-image .tk-gastro-product-image{
  display:block;
  width:100%;
  height:100%;
  min-height:0;
  max-height:none;
  aspect-ratio:4/3;
  object-fit:cover;
  object-position:center;
  border-radius:0;
  transition:transform .28s ease;
}
.tk-gastro-menu .tk-gastro-products .tk-gastro-item.has-image:hover .tk-gastro-product-image{
  transform:scale(1.025);
}
.tk-gastro-menu .tk-gastro-products .tk-gastro-item.has-image .tk-gastro-item-body{
  display:block;
  padding:.86rem .9rem .9rem;
}
.tk-gastro-menu .tk-gastro-products .tk-gastro-details{
  margin-top:.48rem;
}

@media(max-width:1180px){
  .tk-gastro-menu .tk-gastro-products{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media(max-width:700px){
  .tk-gastro-menu .tk-gastro-products{
    grid-template-columns:1fr;
    gap:.5rem;
  }
  .tk-gastro-menu .tk-gastro-products .tk-gastro-item{
    padding:.7rem .74rem;
    border-radius:13px;
  }
  .tk-gastro-menu .tk-gastro-products .tk-gastro-item.has-image{
    padding:0;
  }
  .tk-gastro-menu .tk-gastro-products .tk-gastro-item.has-image .tk-gastro-item-image,
  .tk-gastro-menu .tk-gastro-products .tk-gastro-item.has-image .tk-gastro-product-image{
    aspect-ratio:16/9;
  }
  .tk-gastro-menu .tk-gastro-products .tk-gastro-item.has-image .tk-gastro-item-body{
    padding:.78rem .82rem .82rem;
  }
}

@media(prefers-reduced-motion:reduce){
  .tk-gastro-menu .tk-gastro-products .tk-gastro-item.has-image .tk-gastro-product-image{
    transition:none;
  }
}


/* TK Gastro v0.23.15 – kompakte Produktbild-Vorschau + Lightbox */
.tk-gastro-menu .tk-gastro-products .tk-gastro-item.has-image{
  display:grid;
  grid-template-columns:144px minmax(0,1fr);
  gap:.9rem;
  padding:.72rem;
  overflow:visible;
  align-items:start;
}
.tk-gastro-menu .tk-gastro-products .tk-gastro-item.has-image .tk-gastro-item-image{
  width:144px;
  height:112px;
  aspect-ratio:auto;
  overflow:hidden;
  border-radius:10px;
  background:#f2f4f7;
}
.tk-gastro-menu .tk-gastro-image-button{
  position:relative;
  display:block;
  width:100%;
  height:100%;
  padding:0;
  border:0;
  border-radius:inherit;
  overflow:hidden;
  background:transparent;
  cursor:zoom-in;
}
.tk-gastro-menu .tk-gastro-products .tk-gastro-item.has-image .tk-gastro-product-image{
  display:block;
  width:100%;
  height:100%;
  min-height:0;
  max-height:none;
  aspect-ratio:auto;
  object-fit:cover;
  object-position:center;
  border-radius:0;
  transition:transform .2s ease;
}
.tk-gastro-menu .tk-gastro-image-button:hover .tk-gastro-product-image,
.tk-gastro-menu .tk-gastro-image-button:focus-visible .tk-gastro-product-image{transform:scale(1.04)}
.tk-gastro-menu .tk-gastro-image-button:focus-visible{outline:2px solid currentColor;outline-offset:2px}
.tk-gastro-menu .tk-gastro-image-hint{
  position:absolute;
  right:6px;
  bottom:6px;
  padding:3px 6px;
  border-radius:999px;
  background:rgba(255,255,255,.9);
  color:#344054;
  font-size:10px;
  font-weight:700;
  line-height:1.2;
}
.tk-gastro-menu .tk-gastro-products .tk-gastro-item.has-image .tk-gastro-item-body{
  display:block;
  padding:0;
  min-width:0;
}
.tk-gastro-lightbox{
  position:fixed;
  inset:0;
  z-index:100000;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:24px;
  background:rgba(0,0,0,.82);
}
.tk-gastro-lightbox[hidden]{display:none}
.tk-gastro-lightbox-image{
  display:block;
  max-width:min(1200px,94vw);
  max-height:90vh;
  width:auto;
  height:auto;
  object-fit:contain;
  border-radius:12px;
  box-shadow:0 20px 60px rgba(0,0,0,.35);
}
.tk-gastro-lightbox-close{
  position:fixed;
  top:18px;
  right:18px;
  width:44px;
  height:44px;
  border:0;
  border-radius:50%;
  background:#fff;
  color:#111;
  font-size:28px;
  line-height:1;
  cursor:pointer;
  box-shadow:0 4px 18px rgba(0,0,0,.25);
}
body.tk-gastro-lightbox-open{overflow:hidden}
@media(max-width:700px){
  .tk-gastro-menu .tk-gastro-products .tk-gastro-item.has-image{
    grid-template-columns:96px minmax(0,1fr);
    gap:.7rem;
    padding:.7rem .74rem;
  }
  .tk-gastro-menu .tk-gastro-products .tk-gastro-item.has-image .tk-gastro-item-image{
    width:96px;
    height:82px;
    aspect-ratio:auto;
  }
  .tk-gastro-menu .tk-gastro-image-hint{display:none}
  .tk-gastro-lightbox{padding:14px}
  .tk-gastro-lightbox-close{top:12px;right:12px}
}
@media(prefers-reduced-motion:reduce){
  .tk-gastro-menu .tk-gastro-image-button .tk-gastro-product-image{transition:none}
}


/* TK Gastro v0.23.16 – Kartenauswahl + robuste Touch-Bedienung */
.tk-gastro-card-switcher{width:100%;max-width:100%}
.tk-gastro-card-switcher-buttons{
  display:flex;
  flex-wrap:wrap;
  gap:.5rem;
  margin:0 0 1rem;
  padding:.55rem;
  border:1px solid rgba(31,41,55,.10);
  border-radius:14px;
  background:#fff;
  box-shadow:0 4px 14px rgba(17,24,39,.05);
}
.tk-gastro-card-switch{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:42px;
  padding:.55rem .85rem;
  border:1px solid #cbd2dc;
  border-radius:999px;
  background:#fff;
  color:#344054;
  font:inherit;
  font-size:.86rem;
  font-weight:700;
  line-height:1.15;
  cursor:pointer;
  touch-action:manipulation;
}
.tk-gastro-card-switch.is-active{
  background:var(--tk-gastro-accent,#174ea6);
  border-color:var(--tk-gastro-accent,#174ea6);
  color:#fff;
}
.tk-gastro-card-panel[hidden]{display:none!important}
.tk-gastro-category-toggle,
.tk-gastro-mobile-filter-toggle,
.tk-gastro-image-button{touch-action:manipulation;-webkit-tap-highlight-color:transparent}
@media(max-width:700px){
  .tk-gastro-card-switcher-buttons{
    position:relative;
    top:auto;
    z-index:110;
    flex-wrap:nowrap;
    overflow-x:auto;
    -webkit-overflow-scrolling:touch;
    padding:.45rem;
    margin-bottom:.65rem;
  }
  .tk-gastro-card-switch{flex:0 0 auto;min-height:44px;font-size:.82rem}
}

/* ==========================================================
   TK Gastro v0.23.17 – einheitlicher Sticky-Navigationsstapel
   Kartenauswahl bleibt oben, darunter Kategorien/Filter der aktiven Karte.
   ========================================================== */
@media(max-width:900px){
  .tk-gastro-card-switcher-buttons{
    position:relative !important;
    top:var(--tkg-page-sticky-top,0px) !important;
    z-index:130 !important;
    flex-wrap:nowrap !important;
    overflow-x:auto !important;
    -webkit-overflow-scrolling:touch;
    margin:0 0 .45rem !important;
    background:rgba(255,255,255,.98) !important;
    backdrop-filter:blur(12px);
    -webkit-backdrop-filter:blur(12px);
    box-shadow:0 6px 18px rgba(17,24,39,.10) !important;
  }
  .tk-gastro-card-panel:not([hidden]) .tk-gastro-menu .tk-gastro-guest-toolbar{
    top:auto !important;
    z-index:120 !important;
  }
  .tk-gastro-card-panel:not([hidden]) .tk-gastro-menu .tk-gastro-category{
    scroll-margin-top:calc(var(--tkg-page-sticky-top,0px) + var(--tkg-card-switcher-height,0px) + var(--tkg-toolbar-height,58px) + 18px) !important;
  }
}


/* ==========================================================
   TK Gastro v0.23.18 – konsistente Sticky-Reihenfolge Mobil/Tablet
   1. Kartenauswahl
   2. Kategorien + Filter der aktiven Karte
   3. Logo/Branding und Karteninhalt scrollen darunter
   ========================================================== */
@media(max-width:1180px){
  .tk-gastro-card-switcher{
    --tkg-page-sticky-top:0px;
    --tkg-card-switcher-height:54px;
  }
  .tk-gastro-card-switcher-buttons{
    position:relative !important;
    top:var(--tkg-page-sticky-top,0px) !important;
    z-index:210 !important;
    display:flex !important;
    flex-wrap:nowrap !important;
    gap:.4rem !important;
    overflow-x:auto !important;
    overscroll-behavior-x:contain;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none;
    margin:0 !important;
    padding:.42rem .45rem !important;
    border-radius:12px !important;
    background:rgba(255,255,255,.985) !important;
    box-shadow:0 4px 14px rgba(17,24,39,.10) !important;
    backdrop-filter:blur(12px);
    -webkit-backdrop-filter:blur(12px);
  }
  .tk-gastro-card-switcher-buttons::-webkit-scrollbar{display:none}
  .tk-gastro-card-switcher-buttons .tk-gastro-card-switch{
    flex:0 0 auto !important;
    min-height:40px !important;
  }
  .tk-gastro-card-panel:not([hidden]) .tk-gastro-menu .tk-gastro-guest-toolbar{
    position:relative !important;
    top:auto !important;
    z-index:200 !important;
    margin:.35rem 0 .65rem !important;
    background:rgba(255,255,255,.985) !important;
    box-shadow:0 5px 14px rgba(17,24,39,.08) !important;
  }
  .tk-gastro-card-panel:not([hidden]) .tk-gastro-menu .tk-gastro-header{
    position:relative !important;
    z-index:1 !important;
    margin-top:.85rem !important;
  }
  .tk-gastro-card-panel:not([hidden]) .tk-gastro-menu .tk-gastro-category{
    scroll-margin-top:calc(var(--tkg-page-sticky-top,0px) + var(--tkg-card-switcher-height,54px) + var(--tkg-toolbar-height,62px) + 14px) !important;
  }
}

/* Ohne Kartenauswahl (Shortcode mit fixer card-ID) bleibt nur die Gastleiste sticky. */
@media(max-width:1180px){
  .tk-gastro-menu:not(.tk-gastro-card-switcher .tk-gastro-menu) .tk-gastro-guest-toolbar{
    top:var(--tkg-page-sticky-top,0px) !important;
  }
}

/* Produktbild ist unabhängig von der Anzahl der Varianten immer sichtbar. */
.tk-gastro-menu .tk-gastro-item.has-image .tk-gastro-item-image{
  align-self:start;
  flex:none;
}
.tk-gastro-menu .tk-gastro-item.has-image .tk-gastro-image-button{
  display:block !important;
  visibility:visible !important;
  opacity:1 !important;
}

/* TK Gastro v0.23.23 – zusätzlicher Sicherheitsabstand für Kategorieziele. */
@media(max-width:1180px){
  .tk-gastro-menu .tk-gastro-category{
    scroll-margin-top:calc(var(--tkg-page-sticky-top,0px) + var(--tkg-card-switcher-height,0px) + var(--tkg-toolbar-height,62px) + 14px) !important;
  }
}

/* TK Gastro v0.23.24 – nur eine Kategorie wirkt optisch aktiv.
   Tastaturfokus bleibt sichtbar, bekommt aber keine zweite hellblaue Fläche. */
.tk-gastro-menu .tk-gastro-category-link:focus-visible:not(.is-active){
  color:#174ea6 !important;
  background:#ffffff !important;
  border-color:#84a9e8 !important;
  outline:2px solid rgba(23,78,166,.28);
  outline-offset:2px;
}


/* TK Gastro v0.24.8 – Frontend-Suche und klarere Gastfilter */
.tk-gastro-menu .tk-gastro-search{display:block;flex:1 1 250px;max-width:390px;margin-right:auto}
.tk-gastro-menu .tk-gastro-search-input{width:100%;min-height:38px;border:1px solid #c3c4c7;border-radius:999px;background:#fff;padding:.48rem .85rem;font:inherit;font-size:.88rem;line-height:1.2}
.tk-gastro-menu .tk-gastro-search-input:focus{outline:2px solid var(--tk-gastro-accent,#2271b1);outline-offset:1px;border-color:transparent}
.tk-gastro-menu .tk-filter.is-active{background:var(--tk-gastro-accent,#2271b1)!important;color:#fff!important;border-color:var(--tk-gastro-accent,#2271b1)!important;font-weight:700}
.tk-gastro-menu .tk-filter.is-active .tk-filter-state{display:inline-block!important}
@media(max-width:700px){
 .tk-gastro-menu .tk-gastro-toolbar-actions{display:flex;flex-wrap:wrap;gap:.4rem}
 .tk-gastro-menu .tk-gastro-search{flex:1 0 100%;max-width:none;margin:0}
 .tk-gastro-menu .tk-gastro-search-input{min-height:40px;font-size:16px}
}

/* TK Gastro v0.24.9 – Suche auch im Tablet-Querformat (901–1180px).
   In diesem Bereich sind Kategorien und Filter bereits vollständig sichtbar;
   deshalb wird nur die Suche eingeblendet, ohne zusätzliche Toggle-Buttons. */
@media (min-width:901px) and (max-width:1180px){
  .tk-gastro-menu .tk-gastro-toolbar-actions{
    display:flex !important;
    align-items:center;
    gap:.42rem;
    min-height:42px;
    margin:0 0 .35rem;
  }
  .tk-gastro-menu .tk-gastro-search{
    display:block !important;
    flex:0 1 390px;
    width:min(390px,100%);
    max-width:390px;
    margin:0;
  }
  .tk-gastro-menu .tk-gastro-category-toggle,
  .tk-gastro-menu .tk-gastro-mobile-filter-toggle,
  .tk-gastro-menu .tk-filter-reset{
    display:none !important;
  }
}


/* TK Gastro v0.24.10 – Markenbanner vor der technischen Speisekarten-Navigation. */
.tk-gastro-brand-banner{
  width:100%;
  margin:0 0 .75rem;
  padding:0;
  position:relative;
  z-index:1;
}
.tk-gastro-brand-banner img{
  display:block;
  width:100%;
  max-width:100%;
  height:auto;
  max-height:none;
  object-fit:contain;
}
.tk-gastro-brand-banner.tk-gastro-logo-center img{margin-inline:auto}
.tk-gastro-brand-banner.tk-gastro-logo-right img{margin-left:auto}
.tk-gastro-card-description{margin:.35rem 0 1rem;color:var(--tk-gastro-muted,#666)}
@media (max-width:1180px){
  .tk-gastro-brand-banner{margin-bottom:.55rem}
}


/* ==========================================================
   TK Gastro v0.24.11 – kompakter Übergang Kartenauswahl -> Bedienleiste
   Verhindert zusätzlich Theme-Abstände auf dem gerenderten Kartenpanel.
   ========================================================== */
.tk-gastro-card-panel:not([hidden]) > .tk-gastro-menu{
  margin-top:0 !important;
  padding-top:0 !important;
}
.tk-gastro-card-panel:not([hidden]) .tk-gastro-menu .tk-gastro-guest-toolbar{
  margin-top:.18rem !important;
}
@media(max-width:1180px){
  .tk-gastro-card-panel:not([hidden]) .tk-gastro-menu .tk-gastro-guest-toolbar{
    margin:.18rem 0 .55rem !important;
  }
}


/* ==========================================================
   TK Gastro v0.25.2 – kompakte Branding-/Logozeile
   Das Originalbild bleibt unverändert; nur die Frontend-Anzeige
   wird proportional begrenzt.
   ========================================================== */
.tk-gastro-brand-banner{
  display:flex;
  align-items:center;
  overflow:hidden;
}
.tk-gastro-brand-banner img{
  width:auto !important;
  max-width:100% !important;
  height:auto !important;
  max-height:60px !important;
  object-fit:contain !important;
}
.tk-gastro-brand-banner.tk-gastro-logo-left{justify-content:flex-start}
.tk-gastro-brand-banner.tk-gastro-logo-center{justify-content:center}
.tk-gastro-brand-banner.tk-gastro-logo-right{justify-content:flex-end}
@media(max-width:700px){
  .tk-gastro-brand-banner img{
    max-height:50px !important;
  }
}


/* TK Gastro v0.25.3 – Kartenhinweis und Suche schnell zurücksetzen */
.tk-gastro-card-switcher-label{
  padding:.15rem .65rem .25rem;
  font-size:.78rem;
  line-height:1.2;
  font-weight:700;
  color:#59636f;
}
.tk-gastro-search{position:relative}
.tk-gastro-search > label{display:block}
.tk-gastro-search-input{padding-right:2.5rem!important}
.tk-gastro-search-clear{
  position:absolute;
  right:.42rem;
  top:50%;
  transform:translateY(-50%);
  width:1.85rem;
  height:1.85rem;
  border:0;
  border-radius:50%;
  background:transparent;
  color:#59636f;
  font:700 1.35rem/1 Arial,sans-serif;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:center;
}
.tk-gastro-search-clear:hover,.tk-gastro-search-clear:focus-visible{
  background:#eef1f4;
  color:#1f2937;
  outline:2px solid var(--tk-gastro-accent,#2271b1);
  outline-offset:1px;
}
.tk-gastro-search-clear[hidden]{display:none!important}
.tk-gastro-search-input::-webkit-search-cancel-button{-webkit-appearance:none;appearance:none}


/* TK Gastro v0.25.4 – Produktsuche auf allen Bildschirmgrößen sichtbar.
   Die mobilen Toggle-Buttons bleiben auf Desktop ausgeblendet. */
.tk-gastro-menu .tk-gastro-toolbar-actions{
  display:flex !important;
  align-items:center;
  gap:.42rem;
  min-height:42px;
  flex-wrap:wrap;
}
@media (min-width:1181px){
  .tk-gastro-menu .tk-gastro-search{
    display:block !important;
    flex:0 1 420px;
    width:min(420px,100%);
    max-width:420px;
    margin:0;
  }
  .tk-gastro-menu .tk-gastro-category-toggle,
  .tk-gastro-menu .tk-gastro-mobile-filter-toggle,
  .tk-gastro-menu .tk-filter-reset{
    display:none !important;
  }
}


/* ==========================================================
   TK Gastro v0.26.1 – kompakter und verständlicher Gastfilter
   Keine neue Filterlogik: nur klare Ein-/Ausschluss-Hierarchie
   und eine deutlich ruhigere mobile Darstellung.
   ========================================================== */
.tk-gastro-menu .tk-gastro-filter-section-title{
  display:flex;
  align-items:center;
  gap:.38rem;
  margin:.08rem 0 .55rem;
  font-size:.76rem;
  font-weight:800;
  letter-spacing:.035em;
  text-transform:uppercase;
  color:#475467;
}
.tk-gastro-menu .tk-gastro-filter-section-title span{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:1.35rem;
  height:1.35rem;
  border-radius:999px;
  background:#eef2f6;
  font-size:.82rem;
  line-height:1;
}
.tk-gastro-menu .tk-filter-section-exclude{
  margin-top:.72rem;
  padding-top:.72rem;
  border-top:1px solid #e4e7ec;
}
.tk-gastro-menu .tk-gastro-filter-group{
  min-width:0;
}

@media(max-width:900px){
  .tk-gastro-menu .tk-gastro-toolbar-actions{
    align-items:center !important;
  }
  .tk-gastro-menu .tk-gastro-category-toggle,
  .tk-gastro-menu .tk-gastro-mobile-filter-toggle{
    flex:0 0 auto !important;
    width:auto !important;
    min-width:0 !important;
    max-width:max-content !important;
    padding:.4rem .66rem !important;
  }
  .tk-gastro-menu .tk-gastro-guest-toolbar .tk-gastro-filter-panel{
    max-height:min(62vh,520px) !important;
    padding:.72rem !important;
    border-radius:12px !important;
    box-shadow:0 10px 26px rgba(17,24,39,.10) !important;
  }
  .tk-gastro-menu .tk-gastro-filter-section-title{
    margin:.02rem 0 .48rem;
    font-size:.72rem;
  }
  .tk-gastro-menu .tk-gastro-filter-group{
    margin:.28rem 0 .62rem !important;
  }
  .tk-gastro-menu .tk-gastro-filter-label{
    margin:0 0 .34rem !important;
    font-size:.78rem !important;
    color:#475467 !important;
  }
  .tk-gastro-menu .tk-gastro-filters{
    display:flex !important;
    flex-wrap:wrap !important;
    gap:.34rem !important;
  }
  .tk-gastro-menu .tk-gastro-filters .tk-filter{
    flex:0 1 auto !important;
    width:auto !important;
    min-width:0 !important;
    max-width:100% !important;
    min-height:34px !important;
    margin:0 !important;
    padding:.36rem .58rem !important;
    border-radius:999px !important;
    font-size:.76rem !important;
    line-height:1.18 !important;
    white-space:normal !important;
    text-align:left !important;
  }
  .tk-gastro-menu .tk-filter-section-exclude{
    margin-top:.62rem;
    padding-top:.62rem;
  }
}

@media(max-width:420px){
  .tk-gastro-menu .tk-gastro-category-toggle,
  .tk-gastro-menu .tk-gastro-mobile-filter-toggle,
  .tk-gastro-menu .tk-filter-reset{
    font-size:.76rem !important;
    min-height:36px !important;
  }
  .tk-gastro-menu .tk-gastro-guest-toolbar .tk-gastro-filter-panel{
    padding:.62rem !important;
  }
}


/* TK Gastro v0.26.2 – direkte Produktanker + Desktop-Kategorienavigation */
.tk-gastro-menu .tk-gastro-item[data-tk-gastro-product-anchor]{
  scroll-margin-top:calc(var(--tkg-sticky-top,0px) + var(--tkg-toolbar-height,100px) + 22px);
}
@media(min-width:901px){
  .tk-gastro-menu .tk-gastro-category-nav{
    scrollbar-width:auto !important;
    cursor:grab;
    overscroll-behavior-inline:contain;
  }
  .tk-gastro-menu .tk-gastro-category-nav:active{cursor:grabbing}
  .tk-gastro-menu .tk-gastro-category-nav::-webkit-scrollbar{display:block !important;height:9px}
}


/* ==========================================================
   TK Gastro v0.26.3 – Mobile Sticky Feinschliff, Bild-Fallback, Allergene
   ========================================================== */

/* Fehlende Produktbilder: einheitliche, ruhige Gastro-Medienfläche. */
.tk-gastro-menu .tk-gastro-product-placeholder{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:.32rem;
  width:144px;
  height:112px;
  padding:.6rem;
  border:1px solid #e2e7ec;
  border-radius:10px;
  background:linear-gradient(145deg,#f7f9fb,#eef2f5);
  color:#7a8795;
  text-align:center;
}
.tk-gastro-menu .tk-gastro-placeholder-icon{
  width:38px;
  height:38px;
  fill:none;
  stroke:currentColor;
  stroke-width:2.2;
  stroke-linecap:round;
  stroke-linejoin:round;
  opacity:.8;
}
.tk-gastro-menu .tk-gastro-product-placeholder span{
  font-size:.66rem;
  font-weight:750;
  letter-spacing:.015em;
}
.tk-gastro-menu .tk-gastro-item.has-placeholder .tk-gastro-item-body{
  align-self:start;
}

/* Allergene als echte Pill-Badges: klarer als Fließtext, weiterhin dezent. */
.tk-gastro-menu .tk-gastro-quick-tag-allergen{
  border-color:color-mix(in srgb,var(--tk-gastro-accent,#2271b1) 20%,#d7dde4) !important;
  background:color-mix(in srgb,var(--tk-gastro-accent,#2271b1) 6%,#f7f9fb) !important;
  color:#465466 !important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.35);
}

/* Smartphone/Tablet: der Sticky-Stapel erhält klar getrennte Ebenen.
   Der kleine Abstand verhindert optisches bzw. tatsächliches Ineinanderschieben. */
@media(max-width:1180px){
  .tk-gastro-card-switcher-buttons{
    isolation:isolate;
    border-bottom:1px solid #e1e6eb !important;
  }
  .tk-gastro-card-panel:not([hidden]) .tk-gastro-menu .tk-gastro-guest-toolbar{
    top:calc(var(--tkg-page-sticky-top,0px) + var(--tkg-card-switcher-height,54px) + 4px) !important;
    margin:.2rem 0 .65rem !important;
    border:1px solid #dfe4ea !important;
    box-shadow:0 6px 18px rgba(17,24,39,.10) !important;
    isolation:isolate;
  }
  .tk-gastro-card-panel:not([hidden]) .tk-gastro-menu .tk-gastro-category,
  .tk-gastro-card-panel:not([hidden]) .tk-gastro-menu .tk-gastro-item[data-tk-gastro-product-anchor]{
    scroll-margin-top:calc(var(--tkg-page-sticky-top,0px) + var(--tkg-card-switcher-height,54px) + var(--tkg-toolbar-height,62px) + 26px) !important;
  }
}

@media(max-width:700px){
  .tk-gastro-menu .tk-gastro-product-placeholder{
    width:96px;
    height:82px;
    min-height:82px;
    padding:.4rem;
  }
  .tk-gastro-menu .tk-gastro-placeholder-icon{width:30px;height:30px}
  .tk-gastro-menu .tk-gastro-product-placeholder span{font-size:.61rem}
  .tk-gastro-menu .tk-gastro-guest-toolbar{
    padding:.46rem !important;
  }
  .tk-gastro-menu .tk-gastro-toolbar-actions{
    row-gap:.44rem !important;
  }
  .tk-gastro-menu .tk-gastro-search{
    padding:0 !important;
  }
}


/* v0.27.1: Ziel eines externen Produkt-Ankers kurz hervorheben. */
.tk-gastro-menu .tk-gastro-item.tk-gastro-anchor-target{
  outline:3px solid color-mix(in srgb,var(--tk-gastro-accent,#2271b1) 42%,transparent);
  outline-offset:4px;
  transition:outline-color .25s ease, box-shadow .25s ease;
  box-shadow:0 8px 24px rgba(17,24,39,.12);
}


/* TK Gastro v0.27.2 – Startseite / Nach oben */
.tk-gastro-menu .tk-gastro-page-nav{
  display:flex;align-items:center;justify-content:space-between;gap:.75rem;
  margin:.5rem 0 .8rem;padding:.15rem .1rem;
}
.tk-gastro-menu .tk-gastro-home-link,
.tk-gastro-menu .tk-gastro-top-link{
  display:inline-flex;align-items:center;gap:.35rem;min-height:36px;
  padding:.42rem .7rem;border:1px solid rgba(0,0,0,.10);border-radius:999px;
  background:#fff;color:inherit;text-decoration:none;font:inherit;font-size:.9rem;line-height:1;
  cursor:pointer;box-shadow:0 1px 3px rgba(0,0,0,.05);
}
.tk-gastro-menu .tk-gastro-home-link:hover,
.tk-gastro-menu .tk-gastro-top-link:hover{border-color:var(--tk-gastro-accent,currentColor);}
.tk-gastro-menu .tk-gastro-floating-top{
  position:fixed;right:18px;bottom:18px;z-index:9996;width:44px;height:44px;
  align-items:center;justify-content:center;border:0;border-radius:50%;
  background:var(--tk-gastro-accent,#222);color:#fff;font-size:22px;line-height:1;
  cursor:pointer;box-shadow:0 5px 18px rgba(0,0,0,.22);
}
.tk-gastro-menu .tk-gastro-floating-top:not([hidden]){display:flex;}
@media (max-width:640px){
  .tk-gastro-menu .tk-gastro-page-nav{margin:.35rem 0 .65rem;}
  .tk-gastro-menu .tk-gastro-home-link,.tk-gastro-menu .tk-gastro-top-link{font-size:.82rem;padding:.4rem .58rem;}
  .tk-gastro-menu .tk-gastro-floating-top{right:12px;bottom:14px;width:42px;height:42px;}
}


/* ==========================================================
   TK Gastro v0.27.3 – ruhige Sticky-Navigation
   "Zur Startseite" scrollt am Kartenanfang normal weg.
   "Nach oben" bleibt mit der Bedienleiste erreichbar; Suche,
   Kategorien und Filter liegen direkt darunter.
   ========================================================== */
.tk-gastro-menu .tk-gastro-page-nav{
  justify-content:flex-start !important;
}
.tk-gastro-menu .tk-gastro-sticky-top-row{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  width:100%;
  margin:0 0 .38rem;
}
.tk-gastro-menu .tk-gastro-top-link{
  flex:0 0 auto;
}
.tk-gastro-menu .tk-gastro-floating-top{
  display:none !important;
}
@media(max-width:1180px){
  .tk-gastro-menu .tk-gastro-guest-toolbar{
    overflow:visible !important;
  }
  .tk-gastro-menu .tk-gastro-sticky-top-row{
    margin-bottom:.36rem;
    padding-bottom:.36rem;
    border-bottom:1px solid #e6e9ed;
  }
}
@media(max-width:700px){
  .tk-gastro-menu .tk-gastro-sticky-top-row{
    margin-bottom:.4rem;
    padding:0 0 .38rem;
  }
  .tk-gastro-menu .tk-gastro-top-link{
    min-height:34px;
    font-size:.8rem;
    padding:.38rem .58rem;
  }
}


/* ==========================================================
   TK Gastro v0.27.4 – erzwungene mobile Sticky-Gastleiste
   Kadence/Theme-Overflow darf die Gastnavigation nicht mehr
   aus dem Viewport schieben. JS schaltet die Leiste am
   Sticky-Punkt auf position:fixed und hält ihren Platz frei.
   ========================================================== */
@media(max-width:1180px){
  .tk-gastro-menu .tk-gastro-guest-toolbar.tkg-force-fixed{
    position:fixed !important;
    top:var(--tkg-force-top,0px) !important;
    left:var(--tkg-force-left,0px) !important;
    width:var(--tkg-force-width,100%) !important;
    max-width:none !important;
    margin:0 !important;
    z-index:9990 !important;
    box-sizing:border-box !important;
  }
  .tk-gastro-menu .tkg-toolbar-placeholder{
    display:block;
    width:100%;
    height:0;
    margin:0;
    padding:0;
    border:0;
    pointer-events:none;
  }
  .tk-gastro-menu .tkg-toolbar-placeholder.is-active{
    height:var(--tkg-placeholder-height,0px);
    margin:0 0 .65rem;
  }
}

/* ==========================================================
   TK Gastro v0.27.5 – EIN mobile Positionierungsmodell
   Wichtig: Auf Mobil/Tablet ist die Gastleiste im Normalzustand
   bewusst NICHT sticky. Erst die JS-Steuerung setzt sie auf fixed.
   Damit konkurrieren native Safari-sticky und Fixed-Fallback nicht.
   ========================================================== */
@media(max-width:1180px){
  .tk-gastro-menu .tk-gastro-guest-toolbar:not(.tkg-force-fixed),
  .tk-gastro-card-panel:not([hidden]) .tk-gastro-menu .tk-gastro-guest-toolbar:not(.tkg-force-fixed){
    position:relative !important;
    top:auto !important;
    left:auto !important;
    right:auto !important;
    width:auto !important;
    max-width:none !important;
    transform:none !important;
  }

  .tk-gastro-menu .tk-gastro-guest-toolbar.tkg-force-fixed,
  .tk-gastro-card-panel:not([hidden]) .tk-gastro-menu .tk-gastro-guest-toolbar.tkg-force-fixed{
    position:fixed !important;
    top:var(--tkg-force-top,0px) !important;
    left:var(--tkg-force-left,0px) !important;
    right:auto !important;
    width:var(--tkg-force-width,100%) !important;
    max-width:none !important;
    margin:0 !important;
    transform:none !important;
    z-index:9990 !important;
    box-sizing:border-box !important;
  }
}


/* ==========================================================
   TK Gastro v0.27.6 – EINDEUTIGE mobile Navigation
   Zielzustand:
   - Kartenwahl/Startbereich scrollt normal weg.
   - Nur die Gastleiste mit "Nach oben", Suche, Kategorien und Filter
     wird vom v0.27.6-JS bei Bedarf fixed positioniert.
   - Alle älteren Sticky-Regeln für Kartenwahl/Gastleiste werden
     auf Mobil/Tablet neutralisiert.
   ========================================================== */
@media(max-width:1180px){
  .tk-gastro-card-switcher-buttons{
    position:relative !important;
    top:auto !important;
    left:auto !important;
    right:auto !important;
    z-index:auto !important;
    transform:none !important;
  }

  .tk-gastro-menu .tk-gastro-guest-toolbar:not(.tkg-force-fixed),
  .tk-gastro-card-panel:not([hidden]) .tk-gastro-menu .tk-gastro-guest-toolbar:not(.tkg-force-fixed){
    position:relative !important;
    top:auto !important;
    left:auto !important;
    right:auto !important;
    width:auto !important;
    max-width:none !important;
    transform:none !important;
  }

  .tk-gastro-menu .tk-gastro-guest-toolbar.tkg-force-fixed,
  .tk-gastro-card-panel:not([hidden]) .tk-gastro-menu .tk-gastro-guest-toolbar.tkg-force-fixed{
    position:fixed !important;
    top:var(--tkg-force-top,0px) !important;
    left:var(--tkg-force-left,0px) !important;
    right:auto !important;
    width:var(--tkg-force-width,100%) !important;
    max-width:none !important;
    margin:0 !important;
    transform:none !important;
    z-index:9990 !important;
    box-sizing:border-box !important;
  }
}


/* ==========================================================
   TK Gastro v0.27.7 – alte mobile Sticky-Positionen vollständig deaktiviert.
   Es existiert nur noch der JS-gesteuerte Zustand .tkg-force-fixed.
   ========================================================== */
@media(max-width:1180px){
  .tk-gastro-card-switcher-buttons,
  .tk-gastro-menu .tk-gastro-category-nav,
  .tk-gastro-menu .tk-gastro-guest-toolbar:not(.tkg-force-fixed),
  .tk-gastro-card-panel:not([hidden]) .tk-gastro-menu .tk-gastro-guest-toolbar:not(.tkg-force-fixed){
    position:relative !important;
    top:auto !important;
    left:auto !important;
    right:auto !important;
    transform:none !important;
  }
  .tk-gastro-menu .tk-gastro-guest-toolbar.tkg-force-fixed,
  .tk-gastro-card-panel:not([hidden]) .tk-gastro-menu .tk-gastro-guest-toolbar.tkg-force-fixed{
    position:fixed !important;
    top:var(--tkg-force-top,0px) !important;
    left:var(--tkg-force-left,0px) !important;
    right:auto !important;
    width:var(--tkg-force-width,100%) !important;
    margin:0 !important;
    transform:none !important;
    z-index:9990 !important;
  }
}


/* ==========================================================
   TK Gastro v0.27.18 – EINE mobile Toolbar-Struktur
   Der komplette Kern bleibt Bestandteil der Guest-Toolbar:
   Zeile 1: Nach oben | Suche
   Zeile 2: Kategorien | Filter
   Keine absolute Positionierung; beim Fixieren bewegt sich
   der gesamte Kern als eine Einheit.
   ========================================================== */
.tk-gastro-menu .tk-gastro-toolbar-core{
  width:100%;
}

@media (max-width:700px){
  .tk-gastro-menu .tk-gastro-toolbar-core{
    display:grid !important;
    grid-template-columns:minmax(132px,auto) minmax(0,1fr) !important;
    grid-template-rows:40px 40px !important;
    gap:.38rem !important;
    width:100% !important;
    min-width:0 !important;
    position:relative !important;
  }

  .tk-gastro-menu .tk-gastro-sticky-top-row{
    grid-column:1 !important;
    grid-row:1 !important;
    position:static !important;
    inset:auto !important;
    width:auto !important;
    min-width:0 !important;
    min-height:40px !important;
    height:40px !important;
    margin:0 !important;
    padding:0 !important;
    border:0 !important;
    display:flex !important;
    align-items:stretch !important;
    justify-content:stretch !important;
    visibility:visible !important;
    opacity:1 !important;
  }

  .tk-gastro-menu .tk-gastro-toolbar-actions{
    display:contents !important;
  }

  .tk-gastro-menu .tk-gastro-top-link{
    width:100% !important;
    height:40px !important;
    min-height:40px !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    visibility:visible !important;
    opacity:1 !important;
    white-space:nowrap !important;
    position:static !important;
  }

  .tk-gastro-menu .tk-gastro-search{
    grid-column:2 !important;
    grid-row:1 !important;
    width:100% !important;
    min-width:0 !important;
    margin:0 !important;
  }

  .tk-gastro-menu .tk-gastro-search label{
    display:block !important;
    width:100% !important;
  }

  .tk-gastro-menu .tk-gastro-search input,
  .tk-gastro-menu .tk-gastro-search-input{
    width:100% !important;
    height:40px !important;
    min-height:40px !important;
    margin:0 !important;
  }

  .tk-gastro-menu .tk-gastro-category-toggle{
    grid-column:1 !important;
    grid-row:2 !important;
    width:100% !important;
    height:40px !important;
    min-height:40px !important;
    white-space:nowrap !important;
    word-break:normal !important;
    overflow-wrap:normal !important;
    margin:0 !important;
  }

  .tk-gastro-menu .tk-gastro-mobile-filter-toggle{
    grid-column:2 !important;
    grid-row:2 !important;
    width:100% !important;
    height:40px !important;
    min-height:40px !important;
    white-space:nowrap !important;
    word-break:normal !important;
    overflow-wrap:normal !important;
    margin:0 !important;
  }

  .tk-gastro-menu .tk-filter-reset{
    grid-column:1 / -1 !important;
    grid-row:3 !important;
  }

  .tk-gastro-menu .tk-gastro-filter-wrap,
  .tk-gastro-menu .tk-gastro-category-nav{
    width:100% !important;
  }
}


/* ==========================================================
   TK Gastro v0.27.18 – saubere Wortumbrüche auf Mobil
   Produktnamen dürfen nur an Wortgrenzen umbrechen.
   Keine Trennung mitten im Wort wie "Limoncell / o".
   ========================================================== */
@media (max-width:700px){
  .tk-gastro-menu .tk-gastro-products .tk-gastro-item h4,
  .tk-gastro-menu .tk-gastro-products .tk-gastro-item-title{
    overflow-wrap:normal !important;
    word-wrap:normal !important;
    word-break:normal !important;
    -webkit-hyphens:none !important;
    hyphens:none !important;
  }

  .tk-gastro-menu .tk-gastro-products .tk-gastro-description{
    overflow-wrap:normal !important;
    word-wrap:normal !important;
    word-break:normal !important;
    -webkit-hyphens:auto;
    hyphens:auto;
  }

  .tk-gastro-menu .tk-gastro-products .tk-gastro-item-main{
    min-width:0 !important;
  }

  .tk-gastro-menu .tk-gastro-products .tk-gastro-item h4,
  .tk-gastro-menu .tk-gastro-products .tk-gastro-item-title,
  .tk-gastro-menu .tk-gastro-products .tk-gastro-description{
    min-width:0 !important;
    max-width:100% !important;
  }
}


/* ==========================================================
   TK Gastro v0.27.18 – Mobile nahezu volle Displaybreite
   Die Produktfläche nutzt den verfügbaren Smartphone-Raum
   stärker aus. Innenabstände der Karten bleiben erhalten.
   ========================================================== */
@media (max-width:700px){
  .tk-gastro-menu .tk-gastro-category{
    margin-left:-1.15rem !important;
    margin-right:-1.15rem !important;
  }
  .tk-gastro-menu .tk-gastro-category > h3{
    margin-left:1.15rem !important;
    margin-right:1.15rem !important;
  }
  .tk-gastro-menu .tk-gastro-products{
    width:calc(100% + 2.30rem) !important;
    max-width:none !important;
    margin-left:-1.15rem !important;
    margin-right:-1.15rem !important;
  }
  .tk-gastro-menu .tk-gastro-products .tk-gastro-item{
    width:100% !important;
    max-width:none !important;
  }
}

/* ==========================================================
   TK Gastro v0.27.19 – Smartphone: Bild immer eigene Zeile
   Echte Produktbilder und Platzhalter belegen auf Smartphones
   die komplette erste Kartenzeile. Text, Beschreibung, Preise
   und weitere Produktinfos folgen darunter. Tablet/Desktop
   bleiben unverändert.
   ========================================================== */
@media (max-width:640px){
  .tk-gastro-menu .tk-gastro-products .tk-gastro-item.has-image{
    display:block !important;
    grid-template-columns:none !important;
    gap:0 !important;
    padding:.72rem .76rem !important;
    overflow:hidden !important;
  }

  .tk-gastro-menu .tk-gastro-products .tk-gastro-item.has-image .tk-gastro-item-image,
  .tk-gastro-menu .tk-gastro-products .tk-gastro-item.has-image .tk-gastro-product-placeholder{
    display:flex !important;
    width:100% !important;
    height:auto !important;
    min-height:0 !important;
    aspect-ratio:16/9 !important;
    margin:0 0 .72rem 0 !important;
    border-radius:10px !important;
    overflow:hidden !important;
  }

  .tk-gastro-menu .tk-gastro-products .tk-gastro-item.has-image .tk-gastro-image-button,
  .tk-gastro-menu .tk-gastro-products .tk-gastro-item.has-image .tk-gastro-product-image{
    display:block !important;
    width:100% !important;
    height:100% !important;
    min-height:0 !important;
    max-height:none !important;
    aspect-ratio:16/9 !important;
    object-fit:cover !important;
  }

  .tk-gastro-menu .tk-gastro-products .tk-gastro-item.has-image .tk-gastro-item-body,
  .tk-gastro-menu .tk-gastro-item.has-placeholder .tk-gastro-item-body{
    display:block !important;
    width:100% !important;
    min-width:0 !important;
    padding:0 !important;
  }

  .tk-gastro-menu .tk-gastro-product-placeholder{
    padding:.75rem !important;
  }
}

/* ==========================================================
   TK Gastro v0.27.20 – Smartphone: Karten vollständig sichtbar
   Die ältere Vollbreiten-Regel mit negativen Außenrändern wird
   auf Smartphones neutralisiert. Dadurch bleiben Produktname,
   Beschreibung und Badges links/rechts vollständig im Viewport,
   ohne die Karten unnötig schmal zu machen.
   ========================================================== */
@media (max-width:640px){
  .tk-gastro-menu .tk-gastro-category{
    width:100% !important;
    max-width:100% !important;
    margin-left:0 !important;
    margin-right:0 !important;
    box-sizing:border-box !important;
  }

  .tk-gastro-menu .tk-gastro-category > h3{
    margin-left:0 !important;
    margin-right:0 !important;
  }

  .tk-gastro-menu .tk-gastro-products{
    width:100% !important;
    max-width:100% !important;
    margin-left:0 !important;
    margin-right:0 !important;
    box-sizing:border-box !important;
  }

  .tk-gastro-menu .tk-gastro-products .tk-gastro-item{
    width:100% !important;
    max-width:100% !important;
    margin-left:0 !important;
    margin-right:0 !important;
    box-sizing:border-box !important;
  }
}

/* ==========================================================
   TK Gastro v0.27.21 – Tablet Hochformat wie Mobile behandeln
   Im Hochformat bekommen echte Bilder UND Platzhalter eine
   eigene Kartenzeile. Tablet Querformat/Desktop bleiben kompakt.
   ========================================================== */
@media (max-width:900px) and (orientation:portrait){
  .tk-gastro-menu .tk-gastro-products .tk-gastro-item.has-image,
  .tk-gastro-menu .tk-gastro-products .tk-gastro-item.has-placeholder{
    display:block !important;
    grid-template-columns:none !important;
    gap:0 !important;
    padding:.72rem .76rem !important;
    overflow:hidden !important;
  }

  .tk-gastro-menu .tk-gastro-products .tk-gastro-item.has-image .tk-gastro-item-image,
  .tk-gastro-menu .tk-gastro-products .tk-gastro-item.has-placeholder .tk-gastro-product-placeholder{
    display:flex !important;
    width:100% !important;
    height:auto !important;
    min-height:0 !important;
    aspect-ratio:16/9 !important;
    margin:0 0 .72rem 0 !important;
    border-radius:10px !important;
    overflow:hidden !important;
  }

  .tk-gastro-menu .tk-gastro-products .tk-gastro-item.has-image .tk-gastro-image-button,
  .tk-gastro-menu .tk-gastro-products .tk-gastro-item.has-image .tk-gastro-product-image{
    width:100% !important;
    height:100% !important;
    min-height:0 !important;
    max-height:none !important;
    aspect-ratio:16/9 !important;
    object-fit:cover !important;
  }

  .tk-gastro-menu .tk-gastro-products .tk-gastro-item.has-image .tk-gastro-item-body,
  .tk-gastro-menu .tk-gastro-products .tk-gastro-item.has-placeholder .tk-gastro-item-body{
    display:block !important;
    width:100% !important;
    min-width:0 !important;
    padding:0 !important;
  }
}

/* TK Gastro 0.27.39 – Smartphone-Bildregel: Medienfläche immer eigene Zeile */
@media(max-width:700px){
  .tk-gastro-menu .tk-gastro-products .tk-gastro-item.has-image{
    display:block!important;
    padding:0!important;
    overflow:hidden!important;
  }
  .tk-gastro-menu .tk-gastro-products .tk-gastro-item.has-image .tk-gastro-item-image{
    display:block!important;
    width:100%!important;
    height:auto!important;
    aspect-ratio:16/9!important;
    border-radius:0!important;
    overflow:hidden!important;
    background:#f2f4f7!important;
  }
  .tk-gastro-menu .tk-gastro-products .tk-gastro-item.has-image .tk-gastro-product-image{
    display:block!important;
    width:100%!important;
    height:100%!important;
    aspect-ratio:16/9!important;
    object-fit:cover!important;
    object-position:center!important;
  }
  .tk-gastro-menu .tk-gastro-products .tk-gastro-item.has-image .tk-gastro-item-body{
    display:block!important;
    width:100%!important;
    padding:.78rem .82rem .82rem!important;
  }
  .tk-gastro-menu .tk-gastro-product-placeholder{
    min-height:150px!important;
    align-items:center!important;
    justify-content:center!important;
  }
}
\n\n/* ==========================================================
   TK Gastro v0.27.45 – Desktop Sticky + Rubrikensteuerung
   Desktop behält Suche, Seitennavigation, Nach oben und Rubriken
   dauerhaft erreichbar. Tablet/Mobil bleiben unverändert.
   ========================================================== */
.tk-gastro-menu .tk-gastro-home-link-sticky,
.tk-gastro-menu .tk-gastro-category-nav-title,
.tk-gastro-menu .tk-gastro-category-scroll{
  display:none;
}

@media (min-width:1181px){
  .tk-gastro-menu .tk-gastro-page-nav{
    display:none !important;
  }
  .tk-gastro-menu .tk-gastro-guest-toolbar{
    position:sticky !important;
    top:0 !important;
    z-index:9990 !important;
    overflow:visible !important;
    margin:.7rem 0 1rem !important;
    padding:.5rem .65rem .58rem !important;
  }
  body.admin-bar .tk-gastro-menu .tk-gastro-guest-toolbar{
    top:32px !important;
  }
  .tk-gastro-menu .tk-gastro-sticky-top-row{
    justify-content:space-between !important;
    gap:.65rem !important;
    margin:0 0 .4rem !important;
  }
  .tk-gastro-menu .tk-gastro-home-link-sticky{
    display:inline-flex !important;
    align-items:center;
    justify-content:center;
    min-height:36px;
    white-space:nowrap;
  }
  .tk-gastro-menu .tk-gastro-toolbar-actions{
    display:flex !important;
    align-items:center !important;
    gap:.5rem !important;
    margin:0 0 .42rem !important;
  }
  .tk-gastro-menu .tk-gastro-search{
    display:block !important;
    flex:0 1 460px !important;
    width:min(460px,100%) !important;
    max-width:460px !important;
    margin:0 !important;
  }
  .tk-gastro-menu .tk-gastro-category-toggle,
  .tk-gastro-menu .tk-gastro-mobile-filter-toggle{
    display:none !important;
  }
  .tk-gastro-menu .tk-gastro-category-nav-row{
    display:grid !important;
    grid-template-columns:auto 38px minmax(0,1fr) 38px !important;
    align-items:center !important;
    gap:.42rem !important;
    width:100% !important;
    min-width:0 !important;
    padding:.42rem 0 0 !important;
    border-top:1px solid rgba(31,41,55,.08) !important;
  }
  .tk-gastro-menu .tk-gastro-category-nav-title{
    display:inline-flex !important;
    align-items:center !important;
    min-height:38px !important;
    font-weight:700 !important;
    font-size:.84rem !important;
    color:#465466 !important;
    white-space:nowrap !important;
  }
  .tk-gastro-menu .tk-gastro-category-scroll{
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:38px !important;
    height:38px !important;
    min-width:38px !important;
    padding:0 !important;
    border:1px solid #cbd3dc !important;
    border-radius:10px !important;
    background:#fff !important;
    color:#334155 !important;
    font:700 1.45rem/1 Arial,sans-serif !important;
    cursor:pointer !important;
    box-shadow:0 1px 2px rgba(15,23,42,.04) !important;
  }
  .tk-gastro-menu .tk-gastro-category-scroll:hover:not(:disabled),
  .tk-gastro-menu .tk-gastro-category-scroll:focus-visible:not(:disabled){
    border-color:var(--tk-gastro-accent,#2271b1) !important;
    color:var(--tk-gastro-accent,#2271b1) !important;
  }
  .tk-gastro-menu .tk-gastro-category-scroll:disabled{
    opacity:.32 !important;
    cursor:default !important;
  }
  .tk-gastro-menu .tk-gastro-category-nav-row .tk-gastro-category-nav{
    min-width:0 !important;
    width:100% !important;
    padding:0 !important;
    border:0 !important;
    overflow-x:auto !important;
    overflow-y:hidden !important;
    scrollbar-width:none !important;
    cursor:grab !important;
    user-select:none !important;
    -webkit-user-select:none !important;
    touch-action:pan-y !important;
  }
  .tk-gastro-menu .tk-gastro-category-nav-row .tk-gastro-category-nav::-webkit-scrollbar{
    display:none !important;
  }
  .tk-gastro-menu .tk-gastro-category-nav-row .tk-gastro-category-nav.is-dragging{
    cursor:grabbing !important;
  }
  .tk-gastro-menu .tk-gastro-category-nav-row .tk-gastro-category-link{
    -webkit-user-drag:none;
    user-select:none;
  }
  .tk-gastro-menu .tk-gastro-category,
  .tk-gastro-menu .tk-gastro-item[data-tk-gastro-product-anchor]{
    scroll-margin-top:190px !important;
  }
}

/* ==========================================================
   TK Gastro v0.27.46 – Mobile/Tablet-Struktur wieder isolieren
   Die Desktop-Zusatzstruktur aus 0.27.45 darf die bestehende
   mobile Toolbar nicht beeinflussen. Der Wrapper wird bis
   1180px layout-neutral; Desktop-Steuerelemente bleiben verborgen.
   ========================================================== */
@media (max-width:1180px){
  .tk-gastro-menu .tk-gastro-category-nav-row{
    display:contents !important;
  }
  .tk-gastro-menu .tk-gastro-home-link-sticky,
  .tk-gastro-menu .tk-gastro-category-nav-title,
  .tk-gastro-menu .tk-gastro-category-scroll{
    display:none !important;
  }
  .tk-gastro-menu .tk-gastro-category-nav-row .tk-gastro-category-nav{
    width:100% !important;
    min-width:0 !important;
  }
}

/* ==========================================================
   TK Gastro v0.27.47 – Desktop: Varianten ohne Textquetschung
   Nur Desktop: Produktkopf nutzt die volle Kartenbreite.
   Varianten stehen darunter und dürfen den Produktnamen nicht
   auf eine schmale Restspalte zusammendrücken. Tablet/Mobil
   bleiben unverändert.
   ========================================================== */
@media (min-width:1181px){
  .tk-gastro-menu .tk-gastro-products .tk-gastro-item-main{
    display:block !important;
    min-width:0 !important;
    width:100% !important;
  }

  .tk-gastro-menu .tk-gastro-products .tk-gastro-item h4,
  .tk-gastro-menu .tk-gastro-products .tk-gastro-item-title,
  .tk-gastro-menu .tk-gastro-products .tk-gastro-description{
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    overflow-wrap:normal !important;
    word-break:normal !important;
    hyphens:auto;
  }

  .tk-gastro-menu .tk-gastro-products .tk-gastro-variants{
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    margin-top:.55rem !important;
  }

  .tk-gastro-menu .tk-gastro-products .tk-gastro-variant{
    width:100% !important;
    grid-template-columns:minmax(0,1fr) auto !important;
    justify-content:stretch !important;
  }

  .tk-gastro-menu .tk-gastro-products .tk-gastro-variant.is-single-price{
    justify-content:flex-end !important;
  }
}

/* ==========================================================
   TK Gastro v0.27.48 – Desktop: Bild oberhalb der Produktdaten
   Nur Desktop (>1180px): Produktkarten mit Bild werden vertikal
   aufgebaut. Foto oben, darunter Name/Beschreibung/Kennzeichnungen
   und Varianten. Tablet und Mobil bleiben unverändert.
   ========================================================== */
@media (min-width:1181px){
  .tk-gastro-menu .tk-gastro-products .tk-gastro-item.has-image{
    display:block !important;
    width:100% !important;
    min-width:0 !important;
    padding:0 !important;
    overflow:hidden !important;
  }

  .tk-gastro-menu .tk-gastro-products .tk-gastro-item.has-image .tk-gastro-item-image{
    display:block !important;
    width:100% !important;
    height:auto !important;
    min-height:0 !important;
    aspect-ratio:16/9 !important;
    overflow:hidden !important;
    border-radius:0 !important;
    background:#f2f4f7 !important;
  }

  .tk-gastro-menu .tk-gastro-products .tk-gastro-item.has-image .tk-gastro-image-button{
    display:block !important;
    width:100% !important;
    height:100% !important;
  }

  .tk-gastro-menu .tk-gastro-products .tk-gastro-item.has-image .tk-gastro-product-image{
    display:block !important;
    width:100% !important;
    height:100% !important;
    min-height:0 !important;
    max-height:none !important;
    aspect-ratio:auto !important;
    object-fit:cover !important;
    object-position:center !important;
    border-radius:0 !important;
  }

  .tk-gastro-menu .tk-gastro-products .tk-gastro-item.has-image .tk-gastro-item-body{
    display:block !important;
    width:100% !important;
    min-width:0 !important;
    padding:.86rem .9rem .92rem !important;
    box-sizing:border-box !important;
  }

  .tk-gastro-menu .tk-gastro-products .tk-gastro-item.has-image .tk-gastro-item-main{
    display:block !important;
    width:100% !important;
    min-width:0 !important;
  }
}


/* ==========================================================
   TK Gastro v0.27.49 – Desktop-Variantenkarte robust vertikal
   Desktop wird zusätzlich über ein präzises Zeigegerät erkannt,
   damit die Regel auch bei Browser-Zoom greift, ohne Touch-Tablet
   oder Smartphone umzubauen.
   ========================================================== */
@media (min-width:1000px) and (hover:hover) and (pointer:fine){
  body .tk-gastro-menu .tk-gastro-products > .tk-gastro-item.has-image{
    display:grid !important;
    grid-template-columns:minmax(0,1fr) !important;
    grid-template-rows:auto auto !important;
    gap:0 !important;
    width:100% !important;
    min-width:0 !important;
    max-width:none !important;
    padding:0 !important;
    overflow:hidden !important;
  }

  body .tk-gastro-menu .tk-gastro-products > .tk-gastro-item.has-image > .tk-gastro-item-image{
    grid-column:1 / -1 !important;
    grid-row:1 !important;
    display:block !important;
    width:100% !important;
    height:auto !important;
    min-width:0 !important;
    min-height:0 !important;
    aspect-ratio:16/9 !important;
    border-radius:0 !important;
    overflow:hidden !important;
  }

  body .tk-gastro-menu .tk-gastro-products > .tk-gastro-item.has-image > .tk-gastro-item-body{
    grid-column:1 / -1 !important;
    grid-row:2 !important;
    display:block !important;
    width:100% !important;
    min-width:0 !important;
    padding:.86rem .9rem .92rem !important;
    box-sizing:border-box !important;
  }

  body .tk-gastro-menu .tk-gastro-products > .tk-gastro-item.has-image .tk-gastro-item-main{
    display:block !important;
    width:100% !important;
    min-width:0 !important;
  }

  body .tk-gastro-menu .tk-gastro-products > .tk-gastro-item.has-image .tk-gastro-item-title,
  body .tk-gastro-menu .tk-gastro-products > .tk-gastro-item.has-image h4,
  body .tk-gastro-menu .tk-gastro-products > .tk-gastro-item.has-image .tk-gastro-description,
  body .tk-gastro-menu .tk-gastro-products > .tk-gastro-item.has-image .tk-gastro-meta,
  body .tk-gastro-menu .tk-gastro-products > .tk-gastro-item.has-image .tk-gastro-details{
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    word-break:normal !important;
    overflow-wrap:break-word !important;
  }

  body .tk-gastro-menu .tk-gastro-products > .tk-gastro-item.has-image .tk-gastro-variants{
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    margin-top:.55rem !important;
  }
}

/* 0.27.51: lange Demo-Kartenbeschreibung durch kompakten Hinweis ersetzen */
.tk-gastro-demo-label{margin:.45rem 0 .8rem;font-size:.78rem;font-weight:700;line-height:1.2;color:var(--tk-gastro-muted,#666);text-transform:uppercase;letter-spacing:.04em}

/* 0.27.53: Smartphone/Tablet – Text und Varianten niemals konkurrierend.
   Hohe Spezifität ist nötig wegen der bestehenden Bild-/Desktop-Regeln.
   Nur Darstellung: keine Änderung an Produkten, Preisen oder Bestellungen. */
@media screen and (max-width:1180px){
  body .tk-gastro-menu .tk-gastro-products > .tk-gastro-item.has-image{
    display:block !important;
    grid-template-columns:minmax(0,1fr) !important;
    padding:0 !important;
    gap:0 !important;
    min-width:0 !important;
    overflow:hidden !important;
  }
  body .tk-gastro-menu .tk-gastro-products > .tk-gastro-item.has-image > .tk-gastro-item-image{
    display:block !important;
    width:100% !important;
    height:auto !important;
    min-height:0 !important;
    max-width:100% !important;
    aspect-ratio:16/9 !important;
    margin:0 !important;
    border-radius:0 !important;
    overflow:hidden !important;
  }
  body .tk-gastro-menu .tk-gastro-products > .tk-gastro-item.has-image > .tk-gastro-item-body{
    display:block !important;
    width:100% !important;
    min-width:0 !important;
    padding:.8rem !important;
    box-sizing:border-box !important;
  }
  body .tk-gastro-menu .tk-gastro-products > .tk-gastro-item.has-image .tk-gastro-image-button,
  body .tk-gastro-menu .tk-gastro-products > .tk-gastro-item.has-image .tk-gastro-product-image{
    display:block !important;
    width:100% !important;
    height:100% !important;
    min-height:0 !important;
    max-height:none !important;
    object-fit:cover !important;
    object-position:center !important;
  }
  body .tk-gastro-menu .tk-gastro-products > .tk-gastro-item .tk-gastro-item-main,
  body .tk-gastro-menu .tk-gastro-products > .tk-gastro-item.has-image .tk-gastro-item-main{
    display:block !important;
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
  }
  body .tk-gastro-menu .tk-gastro-products > .tk-gastro-item .tk-gastro-item-main > div,
  body .tk-gastro-menu .tk-gastro-products > .tk-gastro-item.has-image h4,
  body .tk-gastro-menu .tk-gastro-products > .tk-gastro-item.has-image .tk-gastro-description{
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    box-sizing:border-box !important;
    white-space:normal !important;
    word-break:normal !important;
    overflow-wrap:anywhere !important;
    -webkit-hyphens:none !important;
    hyphens:none !important;
  }
  body .tk-gastro-menu .tk-gastro-products > .tk-gastro-item.has-image .tk-gastro-variants,
  body .tk-gastro-menu .tk-gastro-products > .tk-gastro-item .tk-gastro-variants{
    display:flex !important;
    flex-direction:column !important;
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    margin-top:.75rem !important;
    gap:.45rem !important;
  }
  body .tk-gastro-menu .tk-gastro-products > .tk-gastro-item .tk-gastro-variant{
    display:grid !important;
    grid-template-columns:minmax(0,1fr) max-content !important;
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    align-items:baseline !important;
    justify-content:stretch !important;
    gap:.35rem .65rem !important;
  }
  body .tk-gastro-menu .tk-gastro-products > .tk-gastro-item .tk-gastro-variant > span{
    grid-column:1 !important;
    grid-row:1 !important;
    min-width:0 !important;
    white-space:normal !important;
    word-break:normal !important;
    overflow-wrap:anywhere !important;
    text-align:left !important;
    -webkit-hyphens:none !important;
    hyphens:none !important;
  }
  body .tk-gastro-menu .tk-gastro-products > .tk-gastro-item .tk-gastro-variant > strong{
    grid-column:2 !important;
    grid-row:1 !important;
    justify-self:end !important;
    white-space:nowrap !important;
  }
  /* Bestellbutton erhält eine eigene Zeile, auch bei einem Einzelpreis. */
  body .tk-gastro-menu .tk-gastro-products > .tk-gastro-item .tk-gastro-variant > .tk-gastro-order-add{
    grid-column:1 / -1 !important;
    grid-row:2 !important;
    justify-self:end !important;
    margin-left:0 !important;
  }
}
@media screen and (max-width:900px){
  body .tk-gastro-menu .tk-gastro-products{
    grid-template-columns:minmax(0,1fr) !important;
  }
}

/* 0.27.54: kompakte Rubrikenleiste und Filter im nativen Dialog.
   Produktkarten und Desktop-Darstellung bleiben unverändert. */
@media screen and (max-width:1180px){
  body .tk-gastro-menu.tkg-navigation-ready .tk-gastro-category-toggle{
    display:none !important;
  }
  body .tk-gastro-menu.tkg-navigation-ready .tk-gastro-toolbar-core{
    display:grid !important;
    grid-template-columns:minmax(0,1fr) auto !important;
    grid-template-rows:auto auto !important;
    gap:.38rem !important;
  }
  body .tk-gastro-menu.tkg-navigation-ready .tk-gastro-toolbar-actions{
    display:contents !important;
  }
  body .tk-gastro-menu.tkg-navigation-ready .tk-gastro-sticky-top-row{
    grid-column:1 !important;
    grid-row:1 !important;
    margin:0 !important;
  }
  body .tk-gastro-menu.tkg-navigation-ready .tk-gastro-mobile-filter-toggle{
    display:inline-flex !important;
    grid-column:2 !important;
    grid-row:1 !important;
    width:auto !important;
    min-height:44px !important;
    margin:0 !important;
  }
  body .tk-gastro-menu.tkg-navigation-ready .tk-gastro-search{
    grid-column:1 / -1 !important;
    grid-row:2 !important;
    width:100% !important;
    max-width:none !important;
    margin:0 !important;
  }
  body .tk-gastro-menu.tkg-filter-sheet-ready .tk-gastro-toolbar-actions > .tk-filter-reset{
    display:none !important;
  }
  body .tk-gastro-menu.tkg-filter-sheet-ready .tk-gastro-guest-toolbar .tk-gastro-filter-wrap{
    margin:0 !important;
  }
  body .tk-gastro-menu.tkg-filter-sheet-ready .tk-gastro-guest-toolbar .tk-gastro-filter-panel{
    display:none !important;
  }
  body .tk-gastro-menu.tkg-navigation-ready .tk-gastro-category-nav-row{
    display:grid !important;
    grid-template-columns:36px minmax(0,1fr) 36px !important;
    align-items:center !important;
    gap:4px !important;
    width:100% !important;
    min-width:0 !important;
    margin:.38rem 0 0 !important;
    padding:0 !important;
  }
  body .tk-gastro-menu.tkg-navigation-ready .tk-gastro-category-nav-title{
    display:none !important;
  }
  body .tk-gastro-menu.tkg-navigation-ready .tk-gastro-category-scroll{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:36px !important;
    min-width:0 !important;
    height:44px !important;
    padding:0 !important;
    border:1px solid #cbd3dc !important;
    border-radius:12px !important;
    background:#fff !important;
    color:#334155 !important;
    font:700 1.65rem/1 Arial,sans-serif !important;
    cursor:pointer !important;
  }
  body .tk-gastro-menu.tkg-navigation-ready .tk-gastro-category-scroll:disabled{
    visibility:hidden !important;
    pointer-events:none !important;
  }
  body .tk-gastro-menu.tkg-navigation-ready .tk-gastro-category-nav-row .tk-gastro-category-nav{
    display:flex !important;
    flex-wrap:nowrap !important;
    position:static !important;
    width:100% !important;
    min-width:0 !important;
    max-height:none !important;
    gap:.4rem !important;
    margin:0 !important;
    padding:2px 0 !important;
    border:0 !important;
    box-shadow:none !important;
    overflow-x:auto !important;
    overflow-y:hidden !important;
    scrollbar-width:none !important;
    touch-action:pan-x pan-y !important;
    -webkit-overflow-scrolling:touch;
  }
  body .tk-gastro-menu.tkg-navigation-ready .tk-gastro-category-nav::-webkit-scrollbar{
    display:none !important;
  }
  body .tk-gastro-menu.tkg-navigation-ready .tk-gastro-category-nav .tk-gastro-category-link{
    flex:0 0 auto !important;
    width:auto !important;
    min-height:44px !important;
    max-width:calc(100% - 22px) !important;
    box-sizing:border-box !important;
    white-space:normal !important;
    overflow-wrap:anywhere !important;
    display:flex !important;
    align-items:center !important;
    padding:.5rem .7rem !important;
    font-size:.88rem !important;
  }
  body .tk-gastro-menu.tkg-navigation-ready .has-scroll-right .tk-gastro-category-nav{
    -webkit-mask-image:linear-gradient(to right,#000 calc(100% - 12px),transparent);
    mask-image:linear-gradient(to right,#000 calc(100% - 12px),transparent);
  }
  body .tk-gastro-menu.tkg-navigation-ready .has-scroll-left:not(.has-scroll-right) .tk-gastro-category-nav{
    -webkit-mask-image:linear-gradient(to right,transparent,#000 12px);
    mask-image:linear-gradient(to right,transparent,#000 12px);
  }
  body .tk-gastro-menu.tkg-navigation-ready .has-scroll-left.has-scroll-right .tk-gastro-category-nav{
    -webkit-mask-image:linear-gradient(to right,transparent,#000 12px,#000 calc(100% - 12px),transparent);
    mask-image:linear-gradient(to right,transparent,#000 12px,#000 calc(100% - 12px),transparent);
  }
}
html.tkg-filter-modal-open{overflow:hidden;overscroll-behavior:none}
body .tk-gastro-menu dialog.tk-gastro-filter-sheet{
  position:fixed;
  inset:auto 0 0;
  width:min(100%,640px);
  max-width:100%;
  max-height:82vh;
  max-height:82dvh;
  margin:0 auto;
  padding:0;
  border:1px solid #dce1e7;
  border-radius:22px 22px 0 0;
  background:#fff;
  color:#27313f;
  box-sizing:border-box;
  overflow:hidden;
  box-shadow:0 -10px 40px rgba(15,23,42,.18);
  font:inherit;
}
body .tk-gastro-menu dialog.tk-gastro-filter-sheet:not([open]){display:none !important}
body .tk-gastro-menu dialog.tk-gastro-filter-sheet[open]{
  display:flex !important;
  flex-direction:column;
  animation:tkg-sheet-enter .2s ease-out;
}
body .tk-gastro-menu dialog.tk-gastro-filter-sheet::backdrop{background:rgba(15,23,42,.38)}
body .tk-gastro-menu .tk-gastro-sheet-heading,
body .tk-gastro-menu .tk-gastro-sheet-footer{
  display:flex;
  align-items:center;
  justify-content:space-between;
  flex:0 0 auto;
  gap:.5rem;
  padding:.75rem 1rem;
}
body .tk-gastro-menu .tk-gastro-sheet-heading{border-bottom:1px solid #e3e6eb}
body .tk-gastro-menu .tk-gastro-sheet-footer{
  border-top:1px solid #e3e6eb;
  padding-bottom:max(.75rem,env(safe-area-inset-bottom));
  flex-wrap:wrap;
}
body .tk-gastro-menu .tk-gastro-sheet-body{
  overflow-y:auto;
  overscroll-behavior:contain;
  min-height:0;
  padding:.25rem 1rem;
}
body .tk-gastro-menu dialog.tk-gastro-filter-sheet .tk-gastro-filter-panel{
  display:block !important;
  margin:0 !important;
  padding:.5rem 0 !important;
  border:0 !important;
  box-shadow:none !important;
  background:transparent !important;
}
body .tk-gastro-menu .tk-gastro-filter-sheet .tk-gastro-filter-group{
  display:block;
  margin:.6rem 0;
}
body .tk-gastro-menu .tk-gastro-filter-sheet .tk-gastro-filter-label{display:block;margin-bottom:.4rem}
body .tk-gastro-menu .tk-gastro-filter-sheet button{min-height:44px;cursor:pointer}
body .tk-gastro-menu .tk-gastro-filter-sheet .tk-gastro-filters .tk-filter{min-height:44px !important}
body .tk-gastro-menu .tk-gastro-sheet-close,
body .tk-gastro-menu .tk-gastro-sheet-reset,
body .tk-gastro-menu .tk-gastro-sheet-apply{
  border:1px solid #cbd3dc;
  border-radius:12px;
  padding:.55rem .75rem;
  background:#fff;
  color:#27313f;
  font:inherit;
}
body .tk-gastro-menu .tk-gastro-sheet-close{width:44px;font-size:1.5rem;line-height:1}
body .tk-gastro-menu .tk-gastro-sheet-apply{background:#1d4e9e;color:#fff;border-color:#1d4e9e;font-weight:600}
body .tk-gastro-menu .tk-gastro-sheet-reset:disabled{opacity:.5;cursor:default}
body .tk-gastro-menu .tk-gastro-filter-sheet button:focus-visible,
body .tk-gastro-menu .tk-gastro-category-scroll:focus-visible{outline:3px solid #1d4e9e;outline-offset:2px}
@keyframes tkg-sheet-enter{from{transform:translateY(32px);opacity:0}to{transform:translateY(0);opacity:1}}
@media(prefers-reduced-motion:reduce){body .tk-gastro-menu dialog.tk-gastro-filter-sheet[open]{animation:none}}
@media print{body .tk-gastro-menu dialog.tk-gastro-filter-sheet{display:none !important}}

/* 0.27.55: Salbei signalisiert eine wirksame Auswahl, unabhängig davon,
   ob das Filterpanel gerade geöffnet ist. Die Anzahl bleibt als Texthinweis. */
body .tk-gastro-menu .tk-gastro-mobile-filter-toggle.has-active-filters,
body .tk-gastro-menu .tk-gastro-mobile-filter-toggle.has-active-filters:hover,
body .tk-gastro-menu .tk-gastro-mobile-filter-toggle.has-active-filters:focus{
  background:#DCE7D8 !important;
  border-color:#788E71 !important;
  color:#293E2B !important;
}
body .tk-gastro-menu .tk-gastro-mobile-filter-toggle.has-active-filters::before,
body .tk-gastro-menu .tk-gastro-mobile-filter-toggle.has-active-filters::after{
  color:#293E2B !important;
}


/* ==========================================================
   TK Gastro v0.27.57 – konfigurierbares Farbsystem
   ========================================================== */
.tk-gastro-menu{
  --tkg-page-bg:#F8F9FB;
  --tkg-card-bg:#FFFFFF;
  --tkg-highlight:#FFFFFF;
  --tkg-text:#1F2937;
  --tkg-border:#E5E7EB;
  --tkg-on-accent:#FFFFFF;
  background:var(--tkg-page-bg) !important;
  color:var(--tkg-text) !important;
}
.tk-gastro-menu .tk-gastro-guest-toolbar,
.tk-gastro-menu .tk-gastro-toolbar-core,
.tk-gastro-menu .tk-gastro-category-nav-row,
.tk-gastro-menu .tk-gastro-search input,
.tk-gastro-menu .tk-gastro-search-input,
.tk-gastro-menu .tk-gastro-category-link,
.tk-gastro-menu .tk-gastro-top-link,
.tk-gastro-menu .tk-gastro-mobile-filter-toggle,
.tk-gastro-menu .tk-gastro-category-scroll,
.tk-gastro-menu .tk-gastro-filter-panel,
.tk-gastro-menu .tk-gastro-item,
.tk-gastro-menu dialog.tk-gastro-filter-sheet,
.tk-gastro-menu .tk-gastro-sheet-close,
.tk-gastro-menu .tk-gastro-sheet-reset{
  background:var(--tkg-card-bg) !important;
  color:var(--tkg-text) !important;
  border-color:var(--tkg-border) !important;
}
.tk-gastro-menu .tk-gastro-category>h3,
.tk-gastro-menu .tk-gastro-item-title,
.tk-gastro-menu .tk-gastro-item h4,
.tk-gastro-menu .tk-gastro-description,
.tk-gastro-menu .tk-gastro-variant,
.tk-gastro-menu .tk-gastro-details,
.tk-gastro-menu .tk-gastro-meta,
.tk-gastro-menu .tk-gastro-filter-label{color:var(--tkg-text) !important}
.tk-gastro-menu .tk-gastro-category-link.is-active,
.tk-gastro-menu .tk-gastro-filters button.is-active,
.tk-gastro-menu .tk-gastro-sheet-apply{
  background:var(--tk-gastro-accent) !important;
  border-color:var(--tk-gastro-accent) !important;
  color:var(--tkg-on-accent) !important;
}
.tk-gastro-menu .tk-gastro-price,
.tk-gastro-menu .tk-gastro-variant strong{
  background:var(--tkg-highlight);
  color:var(--tkg-text) !important;
  border-radius:.55rem;
  padding:.16rem .42rem;
}
.tk-gastro-menu .tk-gastro-tags span,
.tk-gastro-menu .tk-gastro-allergens span,
.tk-gastro-menu .tk-gastro-additives span{border-color:var(--tkg-border) !important}
.tk-gastro-menu .tk-gastro-item,
.tk-gastro-menu .tk-gastro-variant,
.tk-gastro-menu .tk-gastro-sheet-heading,
.tk-gastro-menu .tk-gastro-sheet-footer{border-color:var(--tkg-border) !important}
.tk-gastro-menu .tk-gastro-category>h3{border-bottom-color:var(--tk-gastro-accent) !important}
.tk-gastro-menu .tk-gastro-filter-sheet button:focus-visible,
.tk-gastro-menu .tk-gastro-category-scroll:focus-visible{outline-color:var(--tk-gastro-accent) !important}
@media screen and (max-width:1180px){
  body .tk-gastro-menu.tkg-navigation-ready .tk-gastro-category-scroll{
    background:var(--tkg-card-bg) !important;color:var(--tkg-text) !important;border-color:var(--tkg-border) !important;
  }
}
/* v0.27.62 – Design-Vorlage Asia Classic */
.tk-gastro-menu.tk-gastro-style-asia-classic{border-radius:0;background:var(--tkg-page-bg);}
.tk-gastro-menu.tk-gastro-style-asia-classic .tk-gastro-header{border-bottom:3px double var(--tkg-border);}
.tk-gastro-menu.tk-gastro-style-asia-classic .tk-gastro-category>h3{font-family:Georgia,"Times New Roman",serif;letter-spacing:.035em;text-transform:uppercase;}
.tk-gastro-menu.tk-gastro-style-asia-classic .tk-gastro-category>h3::before{content:"◆ ";font-size:.55em;color:#C79B35;vertical-align:middle;}
.tk-gastro-menu.tk-gastro-style-asia-classic .tk-gastro-item{border-radius:10px;}


/* ==========================================================
   TK Gastro v0.27.63 – Asia Classic refinement / China Garden
   ========================================================== */
.tk-gastro-menu.tk-gastro-style-asia-classic,
.tk-gastro-menu.tkg-theme-china-garden{
  background:var(--tkg-page-bg,#f7eedc) !important;
  color:var(--tkg-text,#351a14) !important;
}

/* Ruhiger Restaurantkopf statt Formularrahmen */
.tk-gastro-menu.tk-gastro-style-asia-classic .tk-gastro-brand-banner,
.tk-gastro-menu.tkg-theme-china-garden .tk-gastro-brand-banner{
  background:var(--tk-gastro-accent,#9b1b20) !important;
  border:0 !important;
  border-bottom:3px solid var(--tkg-highlight,#cda94f) !important;
  padding:20px 26px !important;
  box-shadow:inset 0 -1px 0 rgba(255,244,211,.28);
}
.tk-gastro-menu.tk-gastro-style-asia-classic .tk-gastro-brand-banner img,
.tk-gastro-menu.tkg-theme-china-garden .tk-gastro-brand-banner img{
  max-height:96px;
  filter:drop-shadow(0 2px 3px rgba(0,0,0,.22));
}

/* Navigation/Filter bewusst ohne roten Kasten-Look */
.tk-gastro-menu.tk-gastro-style-asia-classic .tk-gastro-page-nav,
.tk-gastro-menu.tk-gastro-style-asia-classic .tk-gastro-guest-toolbar,
.tk-gastro-menu.tk-gastro-style-asia-classic .tk-gastro-toolbar-core,
.tk-gastro-menu.tk-gastro-style-asia-classic .tk-gastro-filter-panel,
.tk-gastro-menu.tk-gastro-style-asia-classic .tk-gastro-category-nav-row,
.tk-gastro-menu.tkg-theme-china-garden .tk-gastro-page-nav,
.tk-gastro-menu.tkg-theme-china-garden .tk-gastro-guest-toolbar,
.tk-gastro-menu.tkg-theme-china-garden .tk-gastro-toolbar-core,
.tk-gastro-menu.tkg-theme-china-garden .tk-gastro-filter-panel,
.tk-gastro-menu.tkg-theme-china-garden .tk-gastro-category-nav-row{
  background:var(--tkg-page-bg,#fbf3e3) !important;
  border-color:var(--tkg-border,#dfc98f) !important;
  box-shadow:none !important;
}
.tk-gastro-menu.tk-gastro-style-asia-classic .tk-gastro-guest-toolbar,
.tk-gastro-menu.tkg-theme-china-garden .tk-gastro-guest-toolbar{
  border:0 !important;
  border-bottom:1px solid var(--tkg-border,#dcc486) !important;
}
.tk-gastro-menu.tk-gastro-style-asia-classic .tk-gastro-filter-panel,
.tk-gastro-menu.tkg-theme-china-garden .tk-gastro-filter-panel{
  border:0 !important;
  border-top:1px solid var(--tkg-border,#eadbb6) !important;
  border-radius:0 !important;
}
.tk-gastro-menu.tk-gastro-style-asia-classic .tk-gastro-search-input,
.tk-gastro-menu.tkg-theme-china-garden .tk-gastro-search-input{
  background:var(--tkg-card-bg,#fffaf1) !important;
  border:1px solid var(--tkg-border,#d8bd7a) !important;
  color:var(--tkg-text,#351a14) !important;
  border-radius:999px !important;
}
.tk-gastro-menu.tk-gastro-style-asia-classic .tk-gastro-search-input:focus,
.tk-gastro-menu.tkg-theme-china-garden .tk-gastro-search-input:focus{
  border-color:var(--tkg-highlight,#a67822) !important;
  outline:2px solid rgba(205,169,79,.28) !important;
}

/* Filterchips */
.tk-gastro-menu.tk-gastro-style-asia-classic .tk-gastro-filters button,
.tk-gastro-menu.tk-gastro-style-asia-classic .tk-gastro-quick-tag,
.tk-gastro-menu.tkg-theme-china-garden .tk-gastro-filters button,
.tk-gastro-menu.tkg-theme-china-garden .tk-gastro-quick-tag{
  background:var(--tkg-card-bg,#fffaf1) !important;
  border-color:var(--tkg-border,#dac58f) !important;
  color:var(--tkg-text,#4b2a20) !important;
}
.tk-gastro-menu.tk-gastro-style-asia-classic .tk-gastro-filters button.is-active,
.tk-gastro-menu.tkg-theme-china-garden .tk-gastro-filters button.is-active{
  background:var(--tk-gastro-accent,#92191d) !important;
  border-color:var(--tk-gastro-accent,#92191d) !important;
  color:var(--tkg-on-accent,#fff6dc) !important;
}

/* Rubriken als hochwertige Tabs */
.tk-gastro-menu.tk-gastro-style-asia-classic .tk-gastro-category-link,
.tk-gastro-menu.tkg-theme-china-garden .tk-gastro-category-link{
  background:var(--tkg-card-bg,#fff8e9) !important;
  color:var(--tkg-text,#49271d) !important;
  border:1px solid var(--tkg-border,#d8bd7a) !important;
  border-radius:10px !important;
  box-shadow:0 2px 7px rgba(77,42,20,.06) !important;
  font-weight:650;
}
.tk-gastro-menu.tk-gastro-style-asia-classic .tk-gastro-category-link.is-active,
.tk-gastro-menu.tkg-theme-china-garden .tk-gastro-category-link.is-active{
  background:var(--tk-gastro-accent,#92191d) !important;
  color:var(--tkg-on-accent,#fff4d4) !important;
  border-color:var(--tkg-highlight,#c8a343) !important;
  box-shadow:0 3px 10px rgba(95,18,20,.18) !important;
}

/* Klassische Rubriküberschrift mit Goldlinie */
.tk-gastro-menu.tk-gastro-style-asia-classic .tk-gastro-category>h3,
.tk-gastro-menu.tkg-theme-china-garden .tk-gastro-category>h3{
  color:var(--tk-gastro-accent,#85161a) !important;
  border:0 !important;
  display:flex;
  align-items:center;
  gap:.55rem;
  margin-top:1.35rem;
}
.tk-gastro-menu.tk-gastro-style-asia-classic .tk-gastro-category>h3::before,
.tk-gastro-menu.tkg-theme-china-garden .tk-gastro-category>h3::before{
  content:"◆";
  color:var(--tkg-highlight,#c9a13c);
  font-size:.52em;
}
.tk-gastro-menu.tk-gastro-style-asia-classic .tk-gastro-category>h3::after,
.tk-gastro-menu.tkg-theme-china-garden .tk-gastro-category>h3::after{
  content:"";
  height:1px;
  flex:1;
  background:linear-gradient(90deg,var(--tkg-highlight,#c9a13c),rgba(201,161,60,.18));
}

/* Produktkarten: Creme, Gold, kein roter Formularrahmen */
.tk-gastro-menu.tk-gastro-style-asia-classic .tk-gastro-item,
.tk-gastro-menu.tkg-theme-china-garden .tk-gastro-item{
  background:var(--tkg-card-bg,#fffaf0) !important;
  border:1px solid var(--tkg-border,#ddc78e) !important;
  border-radius:12px !important;
  box-shadow:0 4px 14px rgba(73,42,23,.07) !important;
  overflow:hidden;
}
.tk-gastro-menu.tk-gastro-style-asia-classic .tk-gastro-item:hover,
.tk-gastro-menu.tkg-theme-china-garden .tk-gastro-item:hover{
  border-color:var(--tkg-border,#c6a558) !important;
  box-shadow:0 6px 18px rgba(73,42,23,.11) !important;
}
.tk-gastro-menu.tk-gastro-style-asia-classic .tk-gastro-item-title,
.tk-gastro-menu.tkg-theme-china-garden .tk-gastro-item-title{
  display:flex;
  align-items:flex-start;
  gap:.55rem;
  color:var(--tkg-text,#281814) !important;
}
.tk-gastro-menu.tk-gastro-style-asia-classic .tk-gastro-menu-number,
.tk-gastro-menu.tkg-theme-china-garden .tk-gastro-menu-number{
  flex:0 0 auto;
  min-width:2rem;
  padding:.22rem .42rem;
  border-radius:7px;
  background:var(--tk-gastro-accent,#941a1f);
  color:var(--tkg-on-accent,#fff5dc);
  text-align:center;
  line-height:1.2;
  font-weight:800;
  box-shadow:inset 0 0 0 1px rgba(255,224,145,.18);
}
.tk-gastro-menu.tk-gastro-style-asia-classic .tk-gastro-price,
.tk-gastro-menu.tk-gastro-style-asia-classic .tk-gastro-variant strong,
.tk-gastro-menu.tkg-theme-china-garden .tk-gastro-price,
.tk-gastro-menu.tkg-theme-china-garden .tk-gastro-variant strong{
  background:var(--tkg-highlight,#ead08a) !important;
  color:var(--tk-gastro-accent,#7d171a) !important;
  border:1px solid var(--tkg-highlight,#d2b460) !important;
  font-weight:800 !important;
}

/* Kleine China-Garden-Details */
.tk-gastro-menu.tk-gastro-style-asia-classic .tk-gastro-home-link,
.tk-gastro-menu.tk-gastro-style-asia-classic .tk-gastro-top-link,
.tk-gastro-menu.tkg-theme-china-garden .tk-gastro-home-link,
.tk-gastro-menu.tkg-theme-china-garden .tk-gastro-top-link{
  border-color:var(--tkg-border,#d8bd7a) !important;
  color:var(--tkg-text,#5b2d21) !important;
  background:var(--tkg-card-bg,#fffaf1) !important;
}
.tk-gastro-menu.tk-gastro-style-asia-classic .tk-gastro-page-nav,
.tk-gastro-menu.tkg-theme-china-garden .tk-gastro-page-nav{
  border-bottom:0 !important;
}

@media (max-width:767px){
  .tk-gastro-menu.tk-gastro-style-asia-classic .tk-gastro-brand-banner,
  .tk-gastro-menu.tkg-theme-china-garden .tk-gastro-brand-banner{padding:12px 14px !important;}
  .tk-gastro-menu.tk-gastro-style-asia-classic .tk-gastro-brand-banner img,
  .tk-gastro-menu.tkg-theme-china-garden .tk-gastro-brand-banner img{max-height:72px;}
  .tk-gastro-menu.tk-gastro-style-asia-classic .tk-gastro-category>h3,
  .tk-gastro-menu.tkg-theme-china-garden .tk-gastro-category>h3{font-size:1.35rem;}
  .tk-gastro-menu.tk-gastro-style-asia-classic .tk-gastro-item,
  .tk-gastro-menu.tkg-theme-china-garden .tk-gastro-item{border-radius:10px !important;}
}

/* ==========================================================
   TK Gastro v0.27.64 – Asia Classic compact guest header
   ========================================================== */
.tk-gastro-menu.tk-gastro-style-asia-classic .tk-gastro-asia-hero{
  min-height:132px;padding:18px 24px 16px;text-align:center;position:relative;overflow:hidden;
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  background:var(--tk-gastro-accent,#a42125);
  border-bottom:3px double var(--tkg-highlight,#d4ad52);color:var(--tkg-on-accent,#fff5d9);
}
.tk-gastro-menu.tk-gastro-style-asia-classic .tk-gastro-asia-hero:before,
.tk-gastro-menu.tk-gastro-style-asia-classic .tk-gastro-asia-hero:after{
  content:"";position:absolute;width:180px;height:180px;border:1px solid rgba(229,194,109,.18);transform:rotate(45deg);top:-105px;
}
.tk-gastro-menu.tk-gastro-style-asia-classic .tk-gastro-asia-hero:before{left:-75px}
.tk-gastro-menu.tk-gastro-style-asia-classic .tk-gastro-asia-hero:after{right:-75px}
.tk-gastro-menu.tk-gastro-style-asia-classic .tk-gastro-asia-ornament{font-size:12px;color:var(--tkg-highlight,#e1bd68);line-height:1;margin-bottom:2px}
.tk-gastro-menu.tk-gastro-style-asia-classic .tk-gastro-asia-title{font-family:Georgia,"Times New Roman",serif;font-size:30px;font-weight:700;letter-spacing:.08em;line-height:1.05}
.tk-gastro-menu.tk-gastro-style-asia-classic .tk-gastro-asia-chinese{font-family:Georgia,"Times New Roman",serif;color:var(--tkg-highlight,#e9ca80);font-size:23px;letter-spacing:.28em;margin:5px 0 1px}
.tk-gastro-menu.tk-gastro-style-asia-classic .tk-gastro-asia-location{font-size:13px;letter-spacing:.16em;text-transform:uppercase;color:var(--tkg-on-accent,#fff0c9)}

/* Auf Asia Classic bleibt die Oberfläche kompakt: Filter nur auf Wunsch. */
@media (min-width:1181px){
  .tk-gastro-menu.tk-gastro-style-asia-classic .tk-gastro-mobile-filter-toggle{display:inline-flex !important;align-items:center;justify-content:center}
  .tk-gastro-menu.tk-gastro-style-asia-classic .tk-gastro-filter-wrap{display:none !important}
  .tk-gastro-menu.tk-gastro-style-asia-classic .tk-gastro-filter-wrap:has(.tk-gastro-filter-panel.is-open){display:block !important}
  .tk-gastro-menu.tk-gastro-style-asia-classic .tk-gastro-filter-panel{padding:10px 12px !important;margin:0 !important;border-top:1px solid #e2cb91 !important}
}
.tk-gastro-menu.tk-gastro-style-asia-classic .tk-gastro-toolbar-actions{gap:8px !important}
.tk-gastro-menu.tk-gastro-style-asia-classic .tk-gastro-search{flex:1 1 360px;max-width:520px}
.tk-gastro-menu.tk-gastro-style-asia-classic .tk-gastro-search-input{min-height:42px !important}
.tk-gastro-menu.tk-gastro-style-asia-classic .tk-gastro-category-nav-row{padding-top:8px !important;padding-bottom:8px !important}
.tk-gastro-menu.tk-gastro-style-asia-classic .tk-gastro-category-link{display:inline-flex !important;align-items:center;gap:6px;white-space:nowrap}
.tk-gastro-menu.tk-gastro-style-asia-classic .tk-gastro-category-icon{font-size:16px;line-height:1;filter:saturate(.82)}
.tk-gastro-menu.tk-gastro-style-asia-classic .tk-gastro-filter-label{font-size:.76rem !important}
.tk-gastro-menu.tk-gastro-style-asia-classic .tk-gastro-filters button{font-size:.75rem !important;padding:.28rem .52rem !important}

@media (max-width:700px){
  .tk-gastro-menu.tk-gastro-style-asia-classic .tk-gastro-asia-hero{min-height:96px;padding:12px 14px 10px}
  .tk-gastro-menu.tk-gastro-style-asia-classic .tk-gastro-asia-title{font-size:23px}
  .tk-gastro-menu.tk-gastro-style-asia-classic .tk-gastro-asia-chinese{font-size:18px;margin:3px 0 0}
  .tk-gastro-menu.tk-gastro-style-asia-classic .tk-gastro-asia-location{font-size:11px}
  .tk-gastro-menu.tk-gastro-style-asia-classic .tk-gastro-category-nav-title{display:none !important}
  .tk-gastro-menu.tk-gastro-style-asia-classic .tk-gastro-category-link{padding:.48rem .62rem !important}
}

/* 0.28.05 MOBILE FILTER POLISH */
body .tk-gastro-menu .tk-gastro-sheet-close{appearance:none!important;-webkit-appearance:none!important;display:grid!important;place-items:center!important;width:44px!important;min-width:44px!important;height:44px!important;min-height:44px!important;padding:0!important;margin:0!important;border:1px solid #cbd3dc!important;outline:0;border-radius:12px!important;background:#fff!important;box-shadow:none!important;color:#27313f!important;font:700 1.55rem/1 Arial,sans-serif!important}
body .tk-gastro-menu .tk-gastro-sheet-apply{background:var(--tk-gastro-accent,#8e3b2f)!important;border-color:var(--tk-gastro-accent,#8e3b2f)!important;color:#fff!important;font-weight:750!important}
body .tk-gastro-menu .tk-gastro-mobile-filter-toggle{background:#fff!important;border-color:#cbd3dc!important;color:#334155!important}
body .tk-gastro-menu .tk-gastro-mobile-filter-toggle.has-active-filters,
body .tk-gastro-menu .tk-gastro-mobile-filter-toggle.has-active-filters:hover,
body .tk-gastro-menu .tk-gastro-mobile-filter-toggle.has-active-filters:focus{background:#DCE7D8!important;border-color:#788E71!important;color:#293E2B!important}


/* 0.28.25 – verständliche 0-Treffer-Kommunikation */
.tk-gastro-filter-empty{
  margin:18px 0 26px;
  padding:18px;
  border:1px solid color-mix(in srgb, var(--tkg-accent, #86151a) 35%, #d8d8d8);
  border-radius:16px;
  background:var(--tkg-card-bg,#fffaf0);
  text-align:left;
}
.tk-gastro-filter-empty-title{
  display:block;
  margin:0 0 6px;
  color:var(--tkg-accent, #86151a);
  font-size:1.05rem;
  line-height:1.3;
}
.tk-gastro-filter-empty-text{
  display:block;
  margin:0;
  color:#4b4038;
  line-height:1.45;
}
.tk-gastro-filter-empty-actions{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:14px;
}
.tk-gastro-filter-empty-actions button{
  min-height:42px;
  padding:9px 14px;
  border-radius:999px;
  font:inherit;
  font-weight:700;
  cursor:pointer;
}
.tk-gastro-filter-empty-allow{
  border:1px solid #a67822;
  background:var(--tkg-accent, #86151a);
  color:var(--tkg-card-bg,#fff8e9);
}
.tk-gastro-filter-empty-reset{
  border:1px solid #cbb477;
  background:#fff;
  color:#63342d;
}

/* v0.28.37 Wochenangebote */
.tk-gastro-offer-old{text-decoration:line-through;opacity:.62;margin-right:.35rem}.tk-gastro-offer-badge{display:inline-flex;margin-left:.4rem;padding:.16rem .45rem;border-radius:999px;font-size:.72rem;font-weight:700;background:#fff1c7;color:#7a4a00;vertical-align:middle}

/* v0.28.38 Kartenwahl in die Speisekarte integriert */
.tk-gastro-card-switcher-integrated{border:0!important;background:transparent!important;padding:0!important;box-shadow:none!important}
.tk-gastro-card-switcher-buttons-inline{display:flex;gap:10px;flex-wrap:wrap;padding:12px 10px;margin:0;background:var(--tk-gastro-surface,#fff);border-bottom:1px solid rgba(0,0,0,.08)}
.tk-gastro-sticky-top-row-end{justify-content:flex-end!important}
@media(max-width:640px){
 .tk-gastro-card-switcher-buttons-inline{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:10px}
 .tk-gastro-card-switcher-buttons-inline .tk-gastro-card-switch{width:100%;min-width:0}
}

/* 0.28.40 – Kartenchips kompakt; auf Mobil muss die nächste Karte sichtbar bleiben */
.tk-gastro-card-switcher-buttons-inline{
  display:flex!important;
  flex-wrap:nowrap!important;
  justify-content:flex-start!important;
  gap:8px!important;
  overflow-x:auto!important;
  scrollbar-width:thin;
  -webkit-overflow-scrolling:touch;
  padding:10px 12px!important;
}
.tk-gastro-card-switcher-buttons-inline .tk-gastro-card-switch{
  flex:0 0 auto!important;
  width:auto!important;
  min-width:0!important;
  max-width:none!important;
  padding:8px 14px!important;
  white-space:nowrap!important;
}
@media(max-width:640px){
 .tk-gastro-card-switcher-buttons-inline{
   display:flex!important;
   grid-template-columns:none!important;
   padding-right:34px!important; /* sichtbarer Rest / Scroll-Hinweis */
 }
 .tk-gastro-card-switcher-buttons-inline .tk-gastro-card-switch{
   width:auto!important;
   max-width:72vw!important;
   padding:8px 12px!important;
 }
}

/* 0.28.41 – zeitlich nicht verfügbare Karte sichtbar, aber nicht anklickbar */
.tk-gastro-card-switch.is-disabled,
.tk-gastro-card-switch:disabled{
  cursor:not-allowed!important;
  opacity:.55!important;
  filter:saturate(.35);
  box-shadow:none!important;
}

/* 0.28.43 – Speisenname auf Desktop etwas ruhiger */
@media (min-width:1101px){
  .tk-gastro-menu .tk-gastro-product-name,
  .tk-gastro-menu .tk-gastro-item-title,
  .tk-gastro-menu .tk-gastro-product-title{
    font-size:calc(1em - 2px)!important;
  }
}

/* 0.28.44 – Aktionspreise auf Tablet/Smartphone ohne Überlagerung
   Altpreis, Aktionspreis und Aktionshinweis erhalten eigene Plätze. */
@media (max-width:1100px){
  body .tk-gastro-menu .tk-gastro-products > .tk-gastro-item .tk-gastro-variant{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    grid-auto-rows:auto!important;
    column-gap:10px!important;
    row-gap:7px!important;
    align-items:center!important;
  }
  body .tk-gastro-menu .tk-gastro-products > .tk-gastro-item .tk-gastro-variant > .tk-gastro-offer-old{
    display:block!important;
    grid-column:2!important;
    grid-row:1!important;
    justify-self:end!important;
    margin:0!important;
    font-size:.82rem!important;
    line-height:1.2!important;
    white-space:nowrap!important;
    text-decoration:line-through!important;
  }
  body .tk-gastro-menu .tk-gastro-products > .tk-gastro-item .tk-gastro-variant > .tk-gastro-offer-old + strong{
    grid-column:2!important;
    grid-row:2!important;
    justify-self:end!important;
    white-space:nowrap!important;
  }
  body .tk-gastro-menu .tk-gastro-products > .tk-gastro-item .tk-gastro-variant > .tk-gastro-offer-badge{
    display:inline-flex!important;
    grid-column:1 / -1!important;
    grid-row:3!important;
    justify-self:end!important;
    width:max-content!important;
    max-width:100%!important;
    margin:0!important;
    white-space:normal!important;
    line-height:1.2!important;
  }
  body .tk-gastro-menu .tk-gastro-products > .tk-gastro-item .tk-gastro-variant > .tk-gastro-offer-badge + .tk-gastro-order-add{
    grid-column:1 / -1!important;
    grid-row:4!important;
    justify-self:end!important;
    margin-left:0!important;
  }
}

/* 0.28.45 – definitive responsive offer layout
   Overrides older generic ".tk-gastro-variant > span" grid rules. */
@media (max-width:1100px){
  body .tk-gastro-menu .tk-gastro-products > .tk-gastro-item .tk-gastro-variant.is-single-price{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    grid-template-areas:
      "spacer old"
      "badge price"
      "badge add"!important;
    column-gap:12px!important;
    row-gap:8px!important;
    align-items:center!important;
  }

  body .tk-gastro-menu .tk-gastro-products > .tk-gastro-item .tk-gastro-variant.is-single-price > span.tk-gastro-offer-old{
    grid-area:old!important;
    grid-column:auto!important;
    grid-row:auto!important;
    justify-self:end!important;
    align-self:end!important;
    display:block!important;
    margin:0!important;
    padding:0!important;
    font-size:.80rem!important;
    line-height:1.15!important;
    white-space:nowrap!important;
    text-align:right!important;
    text-decoration:line-through!important;
    opacity:.62!important;
  }

  body .tk-gastro-menu .tk-gastro-products > .tk-gastro-item .tk-gastro-variant.is-single-price > strong{
    grid-area:price!important;
    grid-column:auto!important;
    grid-row:auto!important;
    justify-self:end!important;
    align-self:start!important;
    white-space:nowrap!important;
  }

  body .tk-gastro-menu .tk-gastro-products > .tk-gastro-item .tk-gastro-variant.is-single-price > span.tk-gastro-offer-badge{
    grid-area:badge!important;
    grid-column:auto!important;
    grid-row:auto!important;
    justify-self:start!important;
    align-self:center!important;
    width:auto!important;
    max-width:100%!important;
    margin:0!important;
    padding:.22rem .5rem!important;
    white-space:normal!important;
    text-align:left!important;
    line-height:1.2!important;
    overflow-wrap:anywhere!important;
  }

  body .tk-gastro-menu .tk-gastro-products > .tk-gastro-item .tk-gastro-variant.is-single-price > .tk-gastro-order-add{
    grid-area:add!important;
    grid-column:auto!important;
    grid-row:auto!important;
    justify-self:end!important;
    margin:0!important;
  }
}

@media (max-width:640px){
  body .tk-gastro-menu .tk-gastro-products > .tk-gastro-item .tk-gastro-variant.is-single-price{
    grid-template-columns:minmax(0,1fr) auto!important;
    grid-template-areas:
      "old old"
      "badge price"
      "add add"!important;
  }
  body .tk-gastro-menu .tk-gastro-products > .tk-gastro-item .tk-gastro-variant.is-single-price > span.tk-gastro-offer-old{
    justify-self:end!important;
  }
  body .tk-gastro-menu .tk-gastro-products > .tk-gastro-item .tk-gastro-variant.is-single-price > .tk-gastro-order-add{
    justify-self:end!important;
  }
}

/* 0.28.46 – Produktkarten-Layout bereinigt.
   Desktop: Titel und Bedienung dürfen sich nicht gegenseitig zusammendrücken.
   Tablet/Smartphone: Angebotszeile bekommt eine robuste vertikale Reihenfolge. */

/* Desktop ab 1181 px: drei Karten, aber innerhalb jeder Karte volle Breite für Titel
   und darunter eine eigene Bedien-/Preiszone. */
@media (min-width:1181px){
  body .tk-gastro-menu .tk-gastro-products > .tk-gastro-item .tk-gastro-item-main{
    display:block!important;
    width:100%!important;
  }
  body .tk-gastro-menu .tk-gastro-products > .tk-gastro-item .tk-gastro-item-title{
    display:flex!important;
    width:100%!important;
    gap:.55rem!important;
    align-items:flex-start!important;
  }
  body .tk-gastro-menu .tk-gastro-products > .tk-gastro-item .tk-gastro-item-name{
    flex:1 1 auto!important;
    min-width:0!important;
    width:auto!important;
    overflow-wrap:normal!important;
    word-break:normal!important;
    hyphens:auto!important;
  }
  body .tk-gastro-menu .tk-gastro-products > .tk-gastro-item .tk-gastro-variants{
    width:100%!important;
    margin-top:.55rem!important;
  }
  body .tk-gastro-menu .tk-gastro-products > .tk-gastro-item .tk-gastro-variant.is-single-price{
    display:grid!important;
    width:100%!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    grid-template-areas:
      "badge old"
      "badge price"
      ". add"!important;
    gap:7px 10px!important;
    align-items:center!important;
  }
  body .tk-gastro-menu .tk-gastro-products > .tk-gastro-item .tk-gastro-variant.is-single-price > span.tk-gastro-offer-old{
    grid-area:old!important;grid-column:auto!important;grid-row:auto!important;
    justify-self:end!important;margin:0!important;white-space:nowrap!important;
  }
  body .tk-gastro-menu .tk-gastro-products > .tk-gastro-item .tk-gastro-variant.is-single-price > strong{
    grid-area:price!important;grid-column:auto!important;grid-row:auto!important;justify-self:end!important;
  }
  body .tk-gastro-menu .tk-gastro-products > .tk-gastro-item .tk-gastro-variant.is-single-price > span.tk-gastro-offer-badge{
    grid-area:badge!important;grid-column:auto!important;grid-row:auto!important;
    justify-self:start!important;margin:0!important;white-space:normal!important;
  }
  body .tk-gastro-menu .tk-gastro-products > .tk-gastro-item .tk-gastro-variant.is-single-price > .tk-gastro-order-add{
    grid-area:add!important;grid-column:auto!important;grid-row:auto!important;justify-self:end!important;margin:0!important;
  }
}

/* Tablet: keine Überlagerung – Altpreis, Aktionspreis, Angebot und Bedienung jeweils klar getrennt. */
@media (min-width:641px) and (max-width:1180px){
  body .tk-gastro-menu .tk-gastro-products > .tk-gastro-item .tk-gastro-variant.is-single-price{
    display:grid!important;
    grid-template-columns:1fr!important;
    grid-template-areas:"old" "price" "badge" "add"!important;
    gap:7px!important;
  }
  body .tk-gastro-menu .tk-gastro-products > .tk-gastro-item .tk-gastro-variant.is-single-price > span.tk-gastro-offer-old{
    grid-area:old!important;grid-column:1!important;grid-row:auto!important;justify-self:end!important;margin:0!important;
  }
  body .tk-gastro-menu .tk-gastro-products > .tk-gastro-item .tk-gastro-variant.is-single-price > strong{
    grid-area:price!important;grid-column:1!important;grid-row:auto!important;justify-self:end!important;
  }
  body .tk-gastro-menu .tk-gastro-products > .tk-gastro-item .tk-gastro-variant.is-single-price > span.tk-gastro-offer-badge{
    grid-area:badge!important;grid-column:1!important;grid-row:auto!important;justify-self:end!important;margin:0!important;
  }
  body .tk-gastro-menu .tk-gastro-products > .tk-gastro-item .tk-gastro-variant.is-single-price > .tk-gastro-order-add{
    grid-area:add!important;grid-column:1!important;grid-row:auto!important;justify-self:end!important;margin:0!important;
  }
}

/* Smartphone: gleiche sichere Reihenfolge. */
@media (max-width:640px){
  body .tk-gastro-menu .tk-gastro-products > .tk-gastro-item .tk-gastro-variant.is-single-price{
    display:grid!important;
    grid-template-columns:1fr!important;
    grid-template-areas:"old" "price" "badge" "add"!important;
    gap:7px!important;
  }
  body .tk-gastro-menu .tk-gastro-products > .tk-gastro-item .tk-gastro-variant.is-single-price > span.tk-gastro-offer-old,
  body .tk-gastro-menu .tk-gastro-products > .tk-gastro-item .tk-gastro-variant.is-single-price > strong,
  body .tk-gastro-menu .tk-gastro-products > .tk-gastro-item .tk-gastro-variant.is-single-price > span.tk-gastro-offer-badge,
  body .tk-gastro-menu .tk-gastro-products > .tk-gastro-item .tk-gastro-variant.is-single-price > .tk-gastro-order-add{
    grid-column:1!important;grid-row:auto!important;justify-self:end!important;margin-left:0!important;
  }
}

/* ==========================================================
   KALVASS Gastro v0.28.66 – Werkzeugleiste, konfliktfest
   Überschreibt bewusst die ältere 0.27.54-Navigation mit gleicher/höherer
   Spezifität. Tablet wird nach Orientierung, nicht nur nach Breite behandelt.
   ========================================================== */
.tk-gastro-menu .tk-gastro-top-label-short{display:none}

@media screen and (max-width:1180px){
  body .tk-gastro-menu.tkg-navigation-ready .tk-gastro-toolbar-core{
    display:block !important;
    width:100% !important;
  }
  body .tk-gastro-menu.tkg-navigation-ready .tk-gastro-toolbar-actions{
    display:grid !important;
    grid-template-rows:44px !important;
    align-items:stretch !important;
    width:100% !important;
    gap:8px !important;
    margin:0 !important;
  }
  body .tk-gastro-menu.tkg-navigation-ready .tk-gastro-top-link,
  body .tk-gastro-menu.tkg-navigation-ready .tk-gastro-search,
  body .tk-gastro-menu.tkg-navigation-ready .tk-gastro-mobile-filter-toggle{
    display:flex !important;
    width:100% !important;
    max-width:none !important;
    min-width:0 !important;
    height:44px !important;
    min-height:44px !important;
    margin:0 !important;
    grid-row:1 !important;
  }
  body .tk-gastro-menu.tkg-navigation-ready .tk-gastro-top-link{
    grid-column:1 !important;
    align-items:center !important;
    justify-content:center !important;
    padding:.45rem .55rem !important;
    font-weight:700 !important;
  }
  body .tk-gastro-menu.tkg-navigation-ready .tk-gastro-search{
    grid-column:2 !important;
    position:relative !important;
  }
  body .tk-gastro-menu.tkg-navigation-ready .tk-gastro-search label{
    display:block !important;
    width:100% !important;
  }
  body .tk-gastro-menu.tkg-navigation-ready .tk-gastro-search-input{
    display:block !important;
    width:100% !important;
    height:44px !important;
    min-height:44px !important;
    margin:0 !important;
    border-radius:999px !important;
  }
  body .tk-gastro-menu.tkg-navigation-ready .tk-gastro-mobile-filter-toggle{
    grid-column:3 !important;
    align-items:center !important;
    justify-content:center !important;
    padding:.45rem .65rem !important;
    font-weight:700 !important;
  }
  body .tk-gastro-menu.tkg-navigation-ready .tk-gastro-category-toggle,
  body .tk-gastro-menu.tkg-navigation-ready .tk-filter-reset{
    display:none !important;
  }
  body .tk-gastro-menu.tkg-navigation-ready .tk-gastro-mobile-filter-toggle.has-active-filters{
    border-width:2px !important;
    box-shadow:0 0 0 2px rgba(34,113,177,.10) !important;
  }
}

/* Smartphone: kompakt, Filter bewusst am stärksten. */
@media screen and (max-width:600px){
  body .tk-gastro-menu.tkg-navigation-ready .tk-gastro-toolbar-actions{
    grid-template-columns:minmax(72px,25fr) minmax(0,35fr) minmax(0,40fr) !important;
    gap:5px !important;
  }
  .tk-gastro-menu .tk-gastro-top-label-long{display:none !important}
  .tk-gastro-menu .tk-gastro-top-label-short{display:inline !important}
  body .tk-gastro-menu.tkg-navigation-ready .tk-gastro-top-link,
  body .tk-gastro-menu.tkg-navigation-ready .tk-gastro-mobile-filter-toggle{
    font-size:.80rem !important;
  }
  body .tk-gastro-menu.tkg-navigation-ready .tk-gastro-search-input{
    font-size:16px !important;
    padding:.42rem .68rem !important;
  }
}

/* Tablet HOCH: echtes 20 / 40 / 40 – auch bei 1024px breitem iPad. */
@media screen and (min-width:601px) and (max-width:1180px) and (orientation:portrait){
  body .tk-gastro-menu.tkg-navigation-ready .tk-gastro-toolbar-actions{
    grid-template-columns:minmax(120px,20fr) minmax(0,40fr) minmax(0,40fr) !important;
  }
}

/* Tablet QUER: gleiche Hierarchie, aber kontrollierte Gesamtbreite. */
@media screen and (min-width:601px) and (max-width:1180px) and (orientation:landscape){
  body .tk-gastro-menu.tkg-navigation-ready .tk-gastro-toolbar-actions{
    grid-template-columns:minmax(130px,20fr) minmax(220px,40fr) minmax(220px,40fr) !important;
  }
}

/* KALVASS Gastro v0.28.66 – stabiler Rubriken-Slot beim Kartenwechsel.
   Eine Karte mit nur einer Rubrik bekommt keinen Fake-Button; auf Smartphone
   und Tablet bleibt aber dieselbe Navigationshöhe reserviert. */
.tk-gastro-menu .tk-gastro-category-nav-row-placeholder{display:none}
@media screen and (max-width:1180px){
  body .tk-gastro-menu.tkg-navigation-ready .tk-gastro-category-nav-row-placeholder{
    display:block !important;
    min-height:66px !important;
    margin:0 !important;
    padding:.34rem 0 0 !important;
    border-top:1px solid rgba(31,41,55,.08) !important;
  }
  body .tk-gastro-menu.tkg-navigation-ready .tk-gastro-category-nav-placeholder{
    height:52px !important;
    width:100% !important;
  }
}

/* KALVASS Gastro v0.28.66 – Allergen-Kurzkennzeichnung:
   Icon + gepflegter Buchstabe/Code auf der Produktkachel. */
.tk-gastro-menu .tk-gastro-quick-tag-icon-code{
  display:inline-flex !important;
  align-items:center;
  justify-content:center;
  gap:.24rem;
  white-space:nowrap;
}
.tk-gastro-menu .tk-gastro-quick-tag-icon-code .tk-gastro-quick-tag-symbol{
  line-height:1;
}
.tk-gastro-menu .tk-gastro-quick-tag-icon-code .tk-gastro-quick-tag-code{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:1.15em;
  font-size:.78em;
  line-height:1;
  font-weight:800;
  letter-spacing:.01em;
}


/* ==========================================================
   KALVASS Gastro 0.28.78 – Bestellhilfe in der Sticky-Leiste
   ========================================================== */
.tk-gastro-menu .tk-gastro-help-button{
  flex:0 0 34px;width:34px;height:34px;min-width:34px;padding:0!important;
  display:inline-flex;align-items:center;justify-content:center;
  border:1px solid var(--tk-gastro-accent,#174ea6)!important;border-radius:50%!important;
  background:#fff!important;color:var(--tk-gastro-accent,#174ea6)!important;
  font:800 18px/1 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  box-shadow:0 2px 7px rgba(17,24,39,.12);cursor:pointer;touch-action:manipulation;
}
.tk-gastro-menu .tk-gastro-help-button:hover,.tk-gastro-menu .tk-gastro-help-button:focus-visible{
  background:var(--tk-gastro-accent,#174ea6)!important;color:#fff!important;outline:none;
}
.tk-gastro-help-modal[hidden]{display:none!important}
.tk-gastro-help-modal{position:fixed;inset:0;z-index:999999;display:flex;align-items:center;justify-content:center;padding:20px}
.tk-gastro-help-backdrop{position:absolute;inset:0;background:rgba(15,23,42,.58);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px)}
.tk-gastro-help-dialog{position:relative;width:min(720px,100%);max-height:min(86vh,820px);overflow:auto;background:#fff;color:#1f2937;border-radius:18px;box-shadow:0 24px 70px rgba(15,23,42,.28);padding:24px}
.tk-gastro-help-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;border-bottom:1px solid #e5e7eb;padding-bottom:14px}
.tk-gastro-help-kicker{display:block;color:var(--tk-gastro-accent,#174ea6);font-size:.74rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;margin-bottom:4px}
.tk-gastro-help-head h2{margin:0;font-size:clamp(1.25rem,3vw,1.65rem);line-height:1.2}
.tk-gastro-help-close{flex:0 0 38px;width:38px;height:38px;border:1px solid #d0d5dd;border-radius:50%;background:#fff;color:#344054;font-size:25px;line-height:1;cursor:pointer}
.tk-gastro-help-intro{margin:15px 0 18px;color:#475467;line-height:1.5}
.tk-gastro-help-steps{display:grid;gap:10px}
.tk-gastro-help-step{display:grid;grid-template-columns:34px 1fr;gap:11px;align-items:start;padding:12px;border:1px solid #e4e7ec;border-radius:12px;background:#fff}
.tk-gastro-help-number{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:50%;background:var(--tk-gastro-accent,#174ea6);color:#fff;font-size:.82rem;font-weight:800}
.tk-gastro-help-step h3{margin:1px 0 3px;font-size:.98rem;line-height:1.25}
.tk-gastro-help-step p{margin:0;color:#475467;font-size:.9rem;line-height:1.45}
.tk-gastro-help-footer{position:sticky;bottom:-24px;margin:18px -24px -24px;padding:13px 24px;background:rgba(255,255,255,.97);border-top:1px solid #e5e7eb}
.tk-gastro-help-done{width:100%;min-height:44px;border:0;border-radius:10px;background:var(--tk-gastro-accent,#174ea6);color:#fff;font:inherit;font-weight:800;cursor:pointer}
body.tk-gastro-help-open{overflow:hidden}
@media(max-width:900px){.tk-gastro-menu .tk-gastro-help-button{display:inline-flex!important}}
@media(max-width:560px){
 .tk-gastro-help-modal{padding:0;align-items:stretch}
 .tk-gastro-help-dialog{width:100%;max-height:100vh;border-radius:0;padding:18px 16px}
 .tk-gastro-help-footer{bottom:-18px;margin:16px -16px -18px;padding:12px 16px calc(12px + env(safe-area-inset-bottom))}
 .tk-gastro-help-step{padding:10px;grid-template-columns:30px 1fr}.tk-gastro-help-number{width:28px;height:28px}
}


/* ==========================================================
   KALVASS Gastro 0.28.80 – Toolbar ohne Umbruch
   Hilfe + Nach oben haben feste Kompaktbreiten; Suche nimmt
   den Restplatz, Filter nur die notwendige Breite.
   ========================================================== */
.tk-gastro-menu .tk-gastro-top-link .tk-gastro-top-label-long,
.tk-gastro-menu .tk-gastro-top-link .tk-gastro-top-label-short{display:none!important}
.tk-gastro-menu .tk-gastro-top-link .tk-gastro-top-arrow{
  display:block!important;font-size:1.5rem!important;font-weight:900!important;
  line-height:1!important;transform:scaleX(1.18);
}
@media screen and (max-width:1180px){
  body .tk-gastro-menu.tkg-navigation-ready .tk-gastro-toolbar-actions{
    display:flex!important;flex-flow:row nowrap!important;align-items:center!important;
    width:100%!important;min-width:0!important;height:44px!important;gap:6px!important;
  }
  body .tk-gastro-menu.tkg-navigation-ready .tk-gastro-help-button{
    order:1!important;flex:0 0 34px!important;width:34px!important;min-width:34px!important;
    height:34px!important;margin:0!important;padding:0!important;
  }
  body .tk-gastro-menu.tkg-navigation-ready .tk-gastro-top-link{
    order:2!important;flex:0 0 38px!important;width:38px!important;min-width:38px!important;
    height:38px!important;min-height:38px!important;margin:0!important;padding:0!important;
  }
  body .tk-gastro-menu.tkg-navigation-ready .tk-gastro-search{
    order:3!important;flex:1 1 auto!important;width:auto!important;min-width:0!important;
    height:44px!important;margin:0!important;
  }
  body .tk-gastro-menu.tkg-navigation-ready .tk-gastro-search label{width:100%!important;min-width:0!important}
  body .tk-gastro-menu.tkg-navigation-ready .tk-gastro-mobile-filter-toggle{
    order:4!important;flex:0 0 auto!important;width:auto!important;min-width:72px!important;
    height:44px!important;margin:0!important;padding:.45rem .72rem!important;white-space:nowrap!important;
  }
}
@media screen and (max-width:600px){
  body .tk-gastro-menu.tkg-navigation-ready .tk-gastro-toolbar-actions{gap:4px!important}
  body .tk-gastro-menu.tkg-navigation-ready .tk-gastro-help-button{
    flex-basis:32px!important;width:32px!important;min-width:32px!important;height:32px!important;font-size:17px!important;
  }
  body .tk-gastro-menu.tkg-navigation-ready .tk-gastro-top-link{
    flex-basis:34px!important;width:34px!important;min-width:34px!important;height:34px!important;min-height:34px!important;
  }
  body .tk-gastro-menu.tkg-navigation-ready .tk-gastro-top-link .tk-gastro-top-arrow{font-size:1.4rem!important}
  body .tk-gastro-menu.tkg-navigation-ready .tk-gastro-mobile-filter-toggle{
    min-width:64px!important;padding:.4rem .55rem!important;font-size:.78rem!important;
  }
}

/* ==========================================================
   KALVASS Gastro 0.28.81 – Tablet Toolbar 50 / 40
   Tablet: Suche 50 %, Filter 40 %, Hilfe + Nach oben teilen
   sich die restlichen 10 %. Die Abstaende werden vom Grid
   zuerst abgezogen, damit garantiert nichts umbrechen kann.
   Mobil (<=600px) bleibt unveraendert wie in 0.28.80.
   ========================================================== */
@media screen and (min-width:601px) and (max-width:1180px){
  body .tk-gastro-menu.tkg-navigation-ready .tk-gastro-toolbar-actions{
    display:grid!important;
    grid-template-columns:minmax(36px,5fr) minmax(38px,5fr) minmax(0,50fr) minmax(0,40fr)!important;
    column-gap:6px!important;
    align-items:center!important;
    width:100%!important;
    min-width:0!important;
    height:44px!important;
  }
  body .tk-gastro-menu.tkg-navigation-ready .tk-gastro-help-button{
    grid-column:1!important;order:initial!important;
    width:100%!important;min-width:0!important;max-width:none!important;
    height:38px!important;margin:0!important;padding:0!important;
  }
  body .tk-gastro-menu.tkg-navigation-ready .tk-gastro-top-link{
    grid-column:2!important;order:initial!important;
    width:100%!important;min-width:0!important;max-width:none!important;
    height:38px!important;min-height:38px!important;margin:0!important;padding:0!important;
  }
  body .tk-gastro-menu.tkg-navigation-ready .tk-gastro-search{
    grid-column:3!important;order:initial!important;
    width:100%!important;min-width:0!important;max-width:none!important;
    height:44px!important;margin:0!important;
  }
  body .tk-gastro-menu.tkg-navigation-ready .tk-gastro-mobile-filter-toggle{
    grid-column:4!important;order:initial!important;
    display:inline-flex!important;justify-content:center!important;align-items:center!important;
    width:100%!important;min-width:0!important;max-width:none!important;
    height:44px!important;margin:0!important;padding:.45rem .72rem!important;
    white-space:nowrap!important;
  }
}


/* KALVASS Gastro 0.28.82 – vereinfachte Hilfe + aufklappbare Bildbeispiele */
.tk-gastro-help-step-content{min-width:0}
.tk-gastro-help-example{margin-top:8px}
.tk-gastro-help-example summary{display:inline-flex;align-items:center;gap:5px;cursor:pointer;color:#1746b0;font-weight:700;font-size:.86rem;list-style:none;user-select:none}
.tk-gastro-help-example summary::-webkit-details-marker{display:none}
.tk-gastro-help-example summary:before{content:'▾';font-size:.9rem}
.tk-gastro-help-example[open] summary:before{content:'▴'}
.tk-gastro-help-example .tk-help-hide{display:none}
.tk-gastro-help-example[open] .tk-help-show{display:none}
.tk-gastro-help-example[open] .tk-help-hide{display:inline}
.tk-gastro-help-example-image{margin-top:9px;padding:8px;border:1px solid #e4e7ec;border-radius:10px;background:#f8fafc}
.tk-gastro-help-example-image img{display:block;width:100%;height:auto;max-height:420px;object-fit:contain;border-radius:7px}


/* 0.29.16 – Desktop: Filter-Chip etwas groesser, Tablet/Mobil unveraendert */
@media screen and (min-width:1181px){
 body .tk-gastro-menu.tkg-navigation-ready .tk-gastro-mobile-filter-toggle{min-height:48px!important;padding:.62rem 1.15rem!important;font-size:.98rem!important;font-weight:750!important;}
}

/* ==========================================================
   KALVASS Gastro 0.29.72 – Variantenpreis auf Mobil sichtbar
   Die Bestellaktion ist ein Wrapper (.tk-gastro-order-action). Sie darf
   den Preis in Spalte 2 nicht ueberdecken. Label/Preis bleiben oben,
   die Bestellsteuerung steht darunter rechts.
   ========================================================== */
@media screen and (max-width:1180px){
  body .tk-gastro-menu .tk-gastro-products > .tk-gastro-item .tk-gastro-variant > .tk-gastro-order-action{
    grid-column:2 !important;
    grid-row:2 !important;
    justify-self:end !important;
    min-width:0 !important;
    margin-left:0 !important;
  }
  body .tk-gastro-menu .tk-gastro-products > .tk-gastro-item .tk-gastro-variant > .tk-gastro-inline-note{
    grid-column:1 / -1 !important;
    grid-row:3 !important;
    width:100% !important;
    min-width:0 !important;
  }
}

/* ==========================================================
   KALVASS Gastro 0.29.73 – Mobile Bestellaktion eindeutig
   Preis bleibt oben rechts. Darunter belegt entweder der
   Hinzufuegen-Button ODER die Mengensteuerung denselben Platz.
   ========================================================== */
@media screen and (max-width:600px){
  body .tk-gastro-menu.tk-gastro-order-mode .tk-gastro-variant{
    grid-template-columns:minmax(0,1fr) auto !important;
    grid-auto-rows:auto !important;
  }
  body .tk-gastro-menu.tk-gastro-order-mode .tk-gastro-variant > span:first-child{
    grid-column:1 !important;
    grid-row:1 !important;
    justify-self:start !important;
  }
  body .tk-gastro-menu.tk-gastro-order-mode .tk-gastro-variant > strong{
    grid-column:2 !important;
    grid-row:1 !important;
    justify-self:end !important;
  }
  body .tk-gastro-menu.tk-gastro-order-mode .tk-gastro-variant > .tk-gastro-order-action{
    grid-column:1 / -1 !important;
    grid-row:2 !important;
    justify-self:end !important;
    width:auto !important;
    min-width:0 !important;
    margin-top:6px !important;
  }
  body .tk-gastro-menu.tk-gastro-order-mode .tk-gastro-order-add[hidden],
  body .tk-gastro-menu.tk-gastro-order-mode .tk-gastro-order-inline-qty[hidden]{
    display:none !important;
  }
  body .tk-gastro-menu.tk-gastro-order-mode .tk-gastro-variant > .tk-gastro-inline-note{
    grid-column:1 / -1 !important;
    grid-row:3 !important;
    width:100% !important;
  }
}
\n\n/* 0.29.86 – klassische, filterbare Online-Speisekarte (nur Ansicht, nicht Bestellmodus) */
.tk-gastro-menu.tk-gastro-online-classic{max-width:1180px}
.tk-gastro-online-classic .tk-gastro-toolbar-actions{display:grid;grid-template-columns:auto auto minmax(260px,1fr) auto auto;align-items:center;width:100%}
.tk-gastro-online-classic .tk-gastro-search{width:100%;max-width:none}
.tk-gastro-online-classic .tk-gastro-search label,.tk-gastro-online-classic .tk-gastro-search-input{width:100%}
.tk-gastro-online-classic .tk-gastro-filter-wrap{width:100%}
.tk-gastro-online-classic .tk-gastro-filter-panel{width:100%}
.tk-gastro-online-classic .tk-gastro-category{margin:1.4rem 0 2rem}
.tk-gastro-online-classic .tk-gastro-category>h3{margin:0;padding:.55rem .75rem;border-bottom:2px solid var(--tk-gastro-accent);font-size:1.28rem}
.tk-gastro-online-classic .tk-gastro-item{display:grid;grid-template-columns:82px minmax(0,1fr);gap:14px;align-items:start;padding:12px 8px;border-bottom:1px solid var(--tkg-border,#e5e7eb);background:transparent;border-radius:0;box-shadow:none}
.tk-gastro-online-classic .tk-gastro-item:not(.has-image){grid-template-columns:minmax(0,1fr)}
.tk-gastro-online-classic .tk-gastro-item-image{width:82px;height:68px;margin:0}
.tk-gastro-online-classic .tk-gastro-image-button,.tk-gastro-online-classic .tk-gastro-product-placeholder{width:82px;height:68px;min-height:68px;border-radius:6px;overflow:hidden}
.tk-gastro-online-classic .tk-gastro-product-image{width:100%;height:100%;object-fit:cover}
.tk-gastro-online-classic .tk-gastro-image-hint{display:none}
.tk-gastro-online-classic .tk-gastro-item-body{min-width:0}
.tk-gastro-online-classic .tk-gastro-item-main{display:grid;grid-template-columns:minmax(0,1fr) minmax(150px,230px);gap:18px;align-items:start}
.tk-gastro-online-classic .tk-gastro-item-title{font-size:1.02rem;margin:0 0 3px}
.tk-gastro-online-classic .tk-gastro-description{font-size:.92rem;line-height:1.35;margin:.15rem 0}
.tk-gastro-online-classic .tk-gastro-variants{margin:0}
.tk-gastro-online-classic .tk-gastro-variant{padding:2px 0;min-height:0}
.tk-gastro-online-classic .tk-gastro-details{margin-top:6px}
@media(max-width:700px){
 .tk-gastro-online-classic .tk-gastro-toolbar-actions{display:flex;width:100%;flex-wrap:wrap}
 .tk-gastro-online-classic .tk-gastro-search{order:3;flex:1 0 100%;width:100%;margin-top:6px}
 .tk-gastro-online-classic .tk-gastro-item{grid-template-columns:64px minmax(0,1fr);gap:10px;padding:10px 4px}
 .tk-gastro-online-classic .tk-gastro-item:not(.has-image){grid-template-columns:minmax(0,1fr)}
 .tk-gastro-online-classic .tk-gastro-item-image,.tk-gastro-online-classic .tk-gastro-image-button,.tk-gastro-online-classic .tk-gastro-product-placeholder{width:64px;height:56px;min-height:56px}
 .tk-gastro-online-classic .tk-gastro-item-main{grid-template-columns:minmax(0,1fr);gap:5px}
 .tk-gastro-online-classic .tk-gastro-variants{justify-self:stretch}
}

/* 0.29.87 – Bildbegrenzung klassische Online-Speisekarte */
@media (min-width: 1025px) {
  .tk-gastro-menu.tk-gastro-online-classic .tk-gastro-item.has-image {
    grid-template-columns: 140px minmax(0,1fr) !important;
  }
  .tk-gastro-menu.tk-gastro-online-classic .tk-gastro-item-image,
  .tk-gastro-menu.tk-gastro-online-classic .tk-gastro-image-button,
  .tk-gastro-menu.tk-gastro-online-classic .tk-gastro-product-placeholder {
    width: 140px !important;
    height: 100px !important;
    min-width: 140px !important;
    min-height: 100px !important;
    max-width: 140px !important;
    max-height: 100px !important;
    overflow: hidden !important;
  }
  .tk-gastro-menu.tk-gastro-online-classic .tk-gastro-product-image {
    width: 140px !important;
    height: 100px !important;
    max-width: 140px !important;
    max-height: 100px !important;
    object-fit: cover !important;
  }
}
@media (min-width: 701px) and (max-width: 1024px) {
  .tk-gastro-menu.tk-gastro-online-classic .tk-gastro-item.has-image {
    grid-template-columns: 120px minmax(0,1fr) !important;
  }
  .tk-gastro-menu.tk-gastro-online-classic .tk-gastro-item-image,
  .tk-gastro-menu.tk-gastro-online-classic .tk-gastro-image-button,
  .tk-gastro-menu.tk-gastro-online-classic .tk-gastro-product-placeholder {
    width: 120px !important;
    height: 90px !important;
    min-width: 120px !important;
    min-height: 90px !important;
    max-width: 120px !important;
    max-height: 90px !important;
    overflow: hidden !important;
  }
  .tk-gastro-menu.tk-gastro-online-classic .tk-gastro-product-image {
    width: 120px !important;
    height: 90px !important;
    max-width: 120px !important;
    max-height: 90px !important;
    object-fit: cover !important;
  }
}
@media (max-width: 700px) {
  .tk-gastro-menu.tk-gastro-online-classic .tk-gastro-item.has-image {
    grid-template-columns: 90px minmax(0,1fr) !important;
  }
  .tk-gastro-menu.tk-gastro-online-classic .tk-gastro-item-image,
  .tk-gastro-menu.tk-gastro-online-classic .tk-gastro-image-button,
  .tk-gastro-menu.tk-gastro-online-classic .tk-gastro-product-placeholder {
    width: 90px !important;
    height: 75px !important;
    min-width: 90px !important;
    min-height: 75px !important;
    max-width: 90px !important;
    max-height: 75px !important;
    overflow: hidden !important;
  }
  .tk-gastro-menu.tk-gastro-online-classic .tk-gastro-product-image {
    width: 90px !important;
    height: 75px !important;
    max-width: 90px !important;
    max-height: 75px !important;
    object-fit: cover !important;
  }
}

/* 0.29.88 – kompakte Produktbilder auch in KALVASS Orders / Pickup */
@media (min-width:1025px){
  body .tk-gastro-menu.tk-gastro-order-mode .tk-gastro-products .tk-gastro-item.has-image{
    display:grid !important;grid-template-columns:140px minmax(0,1fr) !important;gap:14px !important;align-items:start !important;padding:12px !important;overflow:visible !important;
  }
  body .tk-gastro-menu.tk-gastro-order-mode .tk-gastro-products .tk-gastro-item.has-image .tk-gastro-item-image,
  body .tk-gastro-menu.tk-gastro-order-mode .tk-gastro-products .tk-gastro-item.has-image .tk-gastro-product-placeholder{
    width:140px !important;height:100px !important;min-width:140px !important;min-height:100px !important;max-width:140px !important;max-height:100px !important;aspect-ratio:auto !important;margin:0 !important;overflow:hidden !important;
  }
  body .tk-gastro-menu.tk-gastro-order-mode .tk-gastro-products .tk-gastro-item.has-image .tk-gastro-image-button,
  body .tk-gastro-menu.tk-gastro-order-mode .tk-gastro-products .tk-gastro-item.has-image .tk-gastro-product-image{
    width:140px !important;height:100px !important;max-width:140px !important;max-height:100px !important;aspect-ratio:auto !important;object-fit:cover !important;
  }
}
@media (min-width:701px) and (max-width:1024px){
  body .tk-gastro-menu.tk-gastro-order-mode .tk-gastro-products .tk-gastro-item.has-image{
    display:grid !important;grid-template-columns:120px minmax(0,1fr) !important;gap:12px !important;align-items:start !important;padding:11px !important;overflow:visible !important;
  }
  body .tk-gastro-menu.tk-gastro-order-mode .tk-gastro-products .tk-gastro-item.has-image .tk-gastro-item-image,
  body .tk-gastro-menu.tk-gastro-order-mode .tk-gastro-products .tk-gastro-item.has-image .tk-gastro-product-placeholder{
    width:120px !important;height:90px !important;min-width:120px !important;min-height:90px !important;max-width:120px !important;max-height:90px !important;aspect-ratio:auto !important;margin:0 !important;overflow:hidden !important;
  }
  body .tk-gastro-menu.tk-gastro-order-mode .tk-gastro-products .tk-gastro-item.has-image .tk-gastro-image-button,
  body .tk-gastro-menu.tk-gastro-order-mode .tk-gastro-products .tk-gastro-item.has-image .tk-gastro-product-image{
    width:120px !important;height:90px !important;max-width:120px !important;max-height:90px !important;aspect-ratio:auto !important;object-fit:cover !important;
  }
}
@media (max-width:700px){
  body .tk-gastro-menu.tk-gastro-order-mode .tk-gastro-products .tk-gastro-item.has-image{
    display:grid !important;grid-template-columns:90px minmax(0,1fr) !important;gap:10px !important;align-items:start !important;padding:10px !important;overflow:visible !important;
  }
  body .tk-gastro-menu.tk-gastro-order-mode .tk-gastro-products .tk-gastro-item.has-image .tk-gastro-item-image,
  body .tk-gastro-menu.tk-gastro-order-mode .tk-gastro-products .tk-gastro-item.has-image .tk-gastro-product-placeholder{
    display:block !important;width:90px !important;height:75px !important;min-width:90px !important;min-height:75px !important;max-width:90px !important;max-height:75px !important;aspect-ratio:auto !important;margin:0 !important;overflow:hidden !important;
  }
  body .tk-gastro-menu.tk-gastro-order-mode .tk-gastro-products .tk-gastro-item.has-image .tk-gastro-image-button,
  body .tk-gastro-menu.tk-gastro-order-mode .tk-gastro-products .tk-gastro-item.has-image .tk-gastro-product-image{
    display:block !important;width:90px !important;height:75px !important;min-height:75px !important;max-width:90px !important;max-height:75px !important;aspect-ratio:auto !important;object-fit:cover !important;
  }
  body .tk-gastro-menu.tk-gastro-order-mode .tk-gastro-products .tk-gastro-item.has-image .tk-gastro-item-body{padding:0 !important;min-width:0 !important;}
}

/* Rubrikbilder: dekorativ, responsiv und layout-sicher */
.tk-gastro-category-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:2px solid var(--tk-gastro-accent,currentColor);margin-top:2.4rem;margin-bottom:.5rem;padding-bottom:.4rem;min-width:0}
.tk-gastro-category-heading>h3{font-size:1.4rem;color:var(--tk-gastro-accent,currentColor);margin:0!important;border:0!important;padding:0!important;min-width:0;flex:1}
.tk-gastro-category-image{display:block;flex:0 0 110px;width:110px!important;height:80px!important;max-width:110px!important;max-height:80px!important;object-fit:contain}
@media(max-width:900px){.tk-gastro-category-image{flex-basis:90px;width:90px!important;height:65px!important;max-width:90px!important;max-height:65px!important}}
@media(max-width:700px){.tk-gastro-category-heading{gap:10px}.tk-gastro-category-image{flex-basis:60px;width:60px!important;height:45px!important;max-width:60px!important;max-height:45px!important}.tk-gastro-category-heading>h3{font-size:clamp(1.2rem,6vw,1.5rem)!important;line-height:1.2!important}}


/* 0.30.28 – optionale Rubrikbilder, layout-sicher */
.tk-gastro-menu .tk-gastro-category>h3>.tk-gastro-category-title{order:1;min-width:0}
.tk-gastro-menu .tk-gastro-category>h3::after{order:2}
.tk-gastro-menu .tk-gastro-category>h3>.tk-gastro-category-image{
  order:3;flex:0 0 110px;display:block;width:110px;height:80px;
  max-width:110px;max-height:80px;object-fit:contain;margin-left:.35rem;
}
@media (max-width:900px){
  .tk-gastro-menu .tk-gastro-category>h3>.tk-gastro-category-image{flex-basis:90px;width:90px;height:65px;max-width:90px;max-height:65px}
}
@media (max-width:600px){
  .tk-gastro-menu .tk-gastro-category>h3>.tk-gastro-category-image{flex-basis:60px;width:60px;height:45px;max-width:60px;max-height:45px;margin-left:.2rem}
}


/* 0.30.30 – China Garden: dezente asiatisch anmutende Typografie nur für Titel und Rubriken */
.tk-gastro-menu.tkg-heading-asia .tk-gastro-asia-title,
.tk-gastro-menu.tkg-heading-asia .tk-gastro-category-title{
  font-family:"HanziPen SC","Xingkai SC","STXingkai","DFKai-SB","KaiTi","Kaiti SC",Papyrus,fantasy;
}
.tk-gastro-menu.tkg-heading-asia .tk-gastro-asia-title{
  font-weight:700;letter-spacing:.095em;
}
.tk-gastro-menu.tkg-heading-asia .tk-gastro-category-title{
  font-weight:700;letter-spacing:.025em;
}

/* 0.30.32 – Online-Layouts und streng begrenzte Rubrikbilder */
.tk-gastro-menu.tk-gastro-category-images .tk-gastro-category>h3{display:flex!important;align-items:center;gap:12px;min-height:52px}
.tk-gastro-menu.tk-gastro-category-images .tk-gastro-category>h3>.tk-gastro-category-image{
  display:block!important;flex:0 0 64px!important;width:64px!important;height:48px!important;
  min-width:0!important;min-height:0!important;max-width:64px!important;max-height:48px!important;
  object-fit:cover!important;border-radius:6px;margin:0!important;overflow:hidden!important;
}
.tk-gastro-menu.tk-gastro-category-images-left .tk-gastro-category>h3>.tk-gastro-category-image{order:0!important}
.tk-gastro-menu.tk-gastro-category-images-left .tk-gastro-category>h3>.tk-gastro-category-title{order:1!important}
.tk-gastro-menu.tk-gastro-category-images-right .tk-gastro-category>h3>.tk-gastro-category-title{order:0!important}
.tk-gastro-menu.tk-gastro-category-images-right .tk-gastro-category>h3>.tk-gastro-category-image{order:3!important;margin-left:auto!important}
@media(max-width:700px){
 .tk-gastro-menu.tk-gastro-category-images .tk-gastro-category>h3>.tk-gastro-category-image{flex-basis:52px!important;width:52px!important;height:39px!important;max-width:52px!important;max-height:39px!important}
}
.tk-gastro-online-compact .tk-gastro-category{margin:1rem 0 1.35rem}
.tk-gastro-online-compact .tk-gastro-category>h3{margin:.2rem 0 .35rem;padding:.35rem .2rem;border-bottom:1px solid var(--tk-gastro-accent)}
.tk-gastro-online-compact .tk-gastro-item{padding:.48rem .25rem!important;margin:0!important;border:0!important;border-bottom:1px solid var(--tkg-border,#e5e7eb)!important;border-radius:0!important;box-shadow:none!important;background:transparent!important}
.tk-gastro-online-compact .tk-gastro-item-main{gap:.55rem!important}
.tk-gastro-online-compact .tk-gastro-description{font-size:.88rem;line-height:1.3;margin:.1rem 0}

/* 0.30.33 – Rubriktypografie ist pro Karte steuerbar, nicht namensabhängig. */
.tk-gastro-menu.tkg-heading-serif .tk-gastro-category-title{font-family:Georgia,"Times New Roman",serif;font-weight:600;letter-spacing:.015em;}


/* KALVASS Gastro 0.30.35 – frei wählbares Restaurant-Headerbild pro Speisekarte.
   Darf auch in Orders/Pickup erscheinen; restliches Bestelllayout bleibt unverändert. */
.tk-gastro-card-header-image{
  width:100%;
  margin:0 0 .55rem;
  padding:0;
  overflow:hidden;
  border-radius:12px;
}
.tk-gastro-card-header-image img{
  display:block;
  width:100%;
  height:auto;
  max-height:180px;
  object-fit:cover;
  object-position:center;
}
@media(max-width:700px){
  .tk-gastro-card-header-image{border-radius:10px;margin-bottom:.45rem}
  .tk-gastro-card-header-image img{max-height:125px}
}

/* ==========================================================
   KALVASS Gastro 0.30.52 – Speisennummer klar vom Gericht trennen
   Pluginweit: Nummer und Bezeichnung erhalten immer sichtbaren Abstand.
   Wirkt auch bei Altbeständen wie „101Palatschinken“, die der Renderer
   nun in Nummer + Gericht zerlegt.
   ========================================================== */
.tk-gastro-menu .tk-gastro-menu-number{
  display:inline-block;
  margin-right:.45rem;
  flex:0 0 auto;
}
.tk-gastro-menu .tk-gastro-item-title{
  column-gap:.45rem;
}


/* 0.30.62 – Desktop: Filter-zuruecksetzen sichtbar, sobald Filter/Suche aktiv sind. */
@media (min-width:901px){
  body .tk-gastro-menu.tkg-navigation-ready .tk-gastro-toolbar-actions > .tk-filter-reset:not([hidden]){
    display:inline-flex!important; align-items:center!important; justify-content:center!important;
    margin-left:8px!important; padding:7px 11px!important; border:1px solid #c9d1d9!important;
    border-radius:9px!important; background:#fff!important; color:#3c434a!important;
    font-size:12px!important; font-weight:650!important; text-decoration:none!important; cursor:pointer!important;
  }
}

/* v0.30.63 – sichtbare Mittagskarte mit Vorbestellhinweis */
.tk-gastro-lunch-order-notice{display:flex;gap:10px;align-items:flex-start;margin:10px 0 18px;padding:12px 14px;border-radius:12px;background:#fff7df;border:1px solid #ecd8a5;color:#5d4a25;font-size:14px;line-height:1.4}.tk-gastro-lunch-order-notice strong{white-space:nowrap}.tk-gastro-lunch-order-notice span{display:block}.tk-gastro-lunch-order-notice b{font-weight:700}@media(max-width:640px){.tk-gastro-lunch-order-notice{display:block}.tk-gastro-lunch-order-notice strong{display:block;margin-bottom:3px}}


/* ==========================================================
   KALVASS Gastro 0.30.72 – Filter-Reset gehoert in den Filter
   Nie mehr als separates Element neben/ueber der Rubriknavigation.
   ========================================================== */
body .tk-gastro-menu.tkg-navigation-ready .tk-gastro-toolbar-actions > .tk-filter-reset{
  display:none !important;
}
.tk-gastro-menu .tk-gastro-filter-panel-reset{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  margin:.65rem 0 0;
  padding:.55rem .85rem;
  border:1px solid #c9d1d9;
  border-radius:9px;
  background:#fff;
  color:#3c434a;
  font:inherit;
  font-size:.86rem;
  font-weight:650;
  cursor:pointer;
}
@media screen and (max-width:1180px){
  .tk-gastro-menu .tk-gastro-filter-panel-reset{display:none !important;}
}

/* ==========================================================
   KALVASS Gastro 0.30.73 – Kartenraster + Filter-Reset final
   - Technischer Toolbar-Reset bleibt immer unsichtbar; Reset ist nur im Filter-UI.
   - Karten einer Rasterzeile werden auf Desktop/Tablet gleich hoch.
   ========================================================== */
body .tk-gastro-menu.tkg-navigation-ready .tk-gastro-toolbar-actions > .tk-filter-reset,
body .tk-gastro-menu.tkg-navigation-ready .tk-gastro-toolbar-actions > .tk-filter-reset:not([hidden]){
  display:none !important;
}
@media screen and (min-width:701px){
  body .tk-gastro-menu .tk-gastro-products{
    align-items:stretch !important;
  }
  body .tk-gastro-menu .tk-gastro-products > .tk-gastro-item:not([hidden]){
    height:100%;
    box-sizing:border-box;
  }
}
@media screen and (max-width:700px){
  body .tk-gastro-menu .tk-gastro-products{
    align-items:start !important;
  }
  body .tk-gastro-menu .tk-gastro-products > .tk-gastro-item{
    height:auto;
  }
}


/* 0.31.50 – Bildgröße der normalen digitalen Speisekarte unabhängig steuerbar. */
.tk-gastro-menu.tk-gastro-online-image-none .tk-gastro-item-image,
.tk-gastro-menu.tk-gastro-online-image-none .tk-gastro-product-placeholder{display:none!important;}
.tk-gastro-menu.tk-gastro-online-image-none .tk-gastro-item.has-image{grid-template-columns:minmax(0,1fr)!important;}
.tk-gastro-menu.tk-gastro-online-image-small .tk-gastro-item-image,
.tk-gastro-menu.tk-gastro-online-image-small .tk-gastro-image-button,
.tk-gastro-menu.tk-gastro-online-image-small .tk-gastro-product-image{width:72px!important;height:58px!important;min-height:58px!important;max-height:58px!important;object-fit:cover!important;}
.tk-gastro-menu.tk-gastro-online-image-medium .tk-gastro-item-image,
.tk-gastro-menu.tk-gastro-online-image-medium .tk-gastro-image-button,
.tk-gastro-menu.tk-gastro-online-image-medium .tk-gastro-product-image{max-height:150px;object-fit:cover;}
.tk-gastro-menu.tk-gastro-online-image-large .tk-gastro-item-image,
.tk-gastro-menu.tk-gastro-online-image-large .tk-gastro-image-button,
.tk-gastro-menu.tk-gastro-online-image-large .tk-gastro-product-image{max-height:220px;object-fit:cover;}

/* 0.31.51 – Digitale Speisekarte: echte klassische Listenansicht.
   Bewusst nur im Online-Classic-Profil; Orders und Druck bleiben unberührt. */
body .tk-gastro-menu.tk-gastro-online-classic .tk-gastro-products{
  display:block!important;
}
body .tk-gastro-menu.tk-gastro-online-classic .tk-gastro-category{
  margin:1.15rem 0 1.75rem!important;
}
body .tk-gastro-menu.tk-gastro-online-classic .tk-gastro-category>h3{
  margin:0!important;
  padding:.58rem .25rem!important;
  border:0!important;
  border-bottom:2px solid var(--tk-gastro-accent)!important;
  border-radius:0!important;
  background:transparent!important;
  font-size:1.22rem!important;
  letter-spacing:.01em!important;
}
body .tk-gastro-menu.tk-gastro-online-classic .tk-gastro-products>.tk-gastro-item{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  gap:0!important;
  width:100%!important;
  margin:0!important;
  padding:.72rem .25rem!important;
  border:0!important;
  border-bottom:1px solid var(--tkg-border,#e5e7eb)!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
body .tk-gastro-menu.tk-gastro-online-classic .tk-gastro-products>.tk-gastro-item.has-image{
  grid-template-columns:92px minmax(0,1fr)!important;
  gap:14px!important;
  align-items:start!important;
}
body .tk-gastro-menu.tk-gastro-online-classic .tk-gastro-products>.tk-gastro-item>.tk-gastro-item-image,
body .tk-gastro-menu.tk-gastro-online-classic .tk-gastro-products>.tk-gastro-item>.tk-gastro-product-placeholder{
  width:92px!important;
  height:70px!important;
  min-width:92px!important;
  min-height:70px!important;
  max-width:92px!important;
  max-height:70px!important;
  margin:0!important;
  border-radius:7px!important;
  overflow:hidden!important;
}
body .tk-gastro-menu.tk-gastro-online-classic .tk-gastro-products>.tk-gastro-item .tk-gastro-image-button,
body .tk-gastro-menu.tk-gastro-online-classic .tk-gastro-products>.tk-gastro-item .tk-gastro-product-image{
  width:100%!important;
  height:100%!important;
  min-width:0!important;
  min-height:0!important;
  max-width:none!important;
  max-height:none!important;
  object-fit:cover!important;
}
body .tk-gastro-menu.tk-gastro-online-classic .tk-gastro-item-body{
  min-width:0!important;
  padding:0!important;
}
body .tk-gastro-menu.tk-gastro-online-classic .tk-gastro-item-main{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(145px,220px)!important;
  gap:14px!important;
  align-items:start!important;
}
body .tk-gastro-menu.tk-gastro-online-classic .tk-gastro-item-title,
body .tk-gastro-menu.tk-gastro-online-classic .tk-gastro-products .tk-gastro-item h4{
  margin:0 0 .16rem!important;
  font-size:1rem!important;
  line-height:1.28!important;
  font-weight:700!important;
}
body .tk-gastro-menu.tk-gastro-online-classic .tk-gastro-description{
  margin:.08rem 0 .18rem!important;
  font-size:.9rem!important;
  line-height:1.35!important;
}
body .tk-gastro-menu.tk-gastro-online-classic .tk-gastro-quick-tags{
  margin-top:.3rem!important;
  gap:.25rem!important;
}
body .tk-gastro-menu.tk-gastro-online-classic .tk-gastro-variants{
  margin:0!important;
  gap:.18rem!important;
  align-self:start!important;
}
body .tk-gastro-menu.tk-gastro-online-classic .tk-gastro-variant{
  min-height:0!important;
  padding:.08rem 0!important;
  gap:.7rem!important;
  align-items:baseline!important;
}
body .tk-gastro-menu.tk-gastro-online-classic .tk-gastro-variant strong{
  white-space:nowrap!important;
  font-size:.98rem!important;
}
body .tk-gastro-menu.tk-gastro-online-classic .tk-gastro-details{
  margin-top:.4rem!important;
}
/* Bildgröße im Listenprofil ist wirklich unabhängig. */
body .tk-gastro-menu.tk-gastro-online-classic.tk-gastro-online-image-none .tk-gastro-products>.tk-gastro-item.has-image{
  grid-template-columns:minmax(0,1fr)!important;
}
body .tk-gastro-menu.tk-gastro-online-classic.tk-gastro-online-image-small .tk-gastro-products>.tk-gastro-item.has-image{
  grid-template-columns:72px minmax(0,1fr)!important;
}
body .tk-gastro-menu.tk-gastro-online-classic.tk-gastro-online-image-small .tk-gastro-products>.tk-gastro-item>.tk-gastro-item-image,
body .tk-gastro-menu.tk-gastro-online-classic.tk-gastro-online-image-small .tk-gastro-products>.tk-gastro-item>.tk-gastro-product-placeholder{
  width:72px!important;height:56px!important;min-width:72px!important;min-height:56px!important;max-width:72px!important;max-height:56px!important;
}
body .tk-gastro-menu.tk-gastro-online-classic.tk-gastro-online-image-large .tk-gastro-products>.tk-gastro-item.has-image{
  grid-template-columns:124px minmax(0,1fr)!important;
}
body .tk-gastro-menu.tk-gastro-online-classic.tk-gastro-online-image-large .tk-gastro-products>.tk-gastro-item>.tk-gastro-item-image,
body .tk-gastro-menu.tk-gastro-online-classic.tk-gastro-online-image-large .tk-gastro-products>.tk-gastro-item>.tk-gastro-product-placeholder{
  width:124px!important;height:88px!important;min-width:124px!important;min-height:88px!important;max-width:124px!important;max-height:88px!important;
}
@media(max-width:700px){
  body .tk-gastro-menu.tk-gastro-online-classic .tk-gastro-products>.tk-gastro-item{padding:.62rem .1rem!important;}
  body .tk-gastro-menu.tk-gastro-online-classic .tk-gastro-products>.tk-gastro-item.has-image{grid-template-columns:68px minmax(0,1fr)!important;gap:10px!important;}
  body .tk-gastro-menu.tk-gastro-online-classic .tk-gastro-products>.tk-gastro-item>.tk-gastro-item-image,
  body .tk-gastro-menu.tk-gastro-online-classic .tk-gastro-products>.tk-gastro-item>.tk-gastro-product-placeholder{width:68px!important;height:54px!important;min-width:68px!important;min-height:54px!important;max-width:68px!important;max-height:54px!important;}
  body .tk-gastro-menu.tk-gastro-online-classic .tk-gastro-item-main{grid-template-columns:minmax(0,1fr)!important;gap:.28rem!important;}
  body .tk-gastro-menu.tk-gastro-online-classic .tk-gastro-variants{width:100%!important;}
  body .tk-gastro-menu.tk-gastro-online-classic .tk-gastro-variant{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:.55rem!important;}
  body .tk-gastro-menu.tk-gastro-online-classic .tk-gastro-item-title{font-size:.98rem!important;}
  body .tk-gastro-menu.tk-gastro-online-classic .tk-gastro-description{font-size:.86rem!important;}
  body .tk-gastro-menu.tk-gastro-online-classic.tk-gastro-online-image-none .tk-gastro-products>.tk-gastro-item.has-image{grid-template-columns:minmax(0,1fr)!important;}
  body .tk-gastro-menu.tk-gastro-online-classic.tk-gastro-online-image-large .tk-gastro-products>.tk-gastro-item.has-image{grid-template-columns:84px minmax(0,1fr)!important;}
  body .tk-gastro-menu.tk-gastro-online-classic.tk-gastro-online-image-large .tk-gastro-products>.tk-gastro-item>.tk-gastro-item-image,
  body .tk-gastro-menu.tk-gastro-online-classic.tk-gastro-online-image-large .tk-gastro-products>.tk-gastro-item>.tk-gastro-product-placeholder{width:84px!important;height:64px!important;min-width:84px!important;min-height:64px!important;max-width:84px!important;max-height:64px!important;}
}

/* ==========================================================
   KALVASS Gastro 0.31.62 - verbindliche Onlinekarten-Layouts
   Diese Regeln stehen bewusst am Dateiende. Jedes Profil setzt
   Raster, Karte und Bildaufbau vollständig und unabhängig.
   ========================================================== */

/* KACHELN: mehrspaltig, Bild oben, Karten gleicher Breite. */
body .tk-gastro-menu.tk-gastro-online-layout-standard .tk-gastro-products{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:16px!important;
  align-items:stretch!important;
}
body .tk-gastro-menu.tk-gastro-online-layout-standard .tk-gastro-products>.tk-gastro-item{
  display:flex!important;
  flex-direction:column!important;
  width:100%!important;
  height:100%!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
  border:1px solid var(--tkg-border,#e3e7ed)!important;
  border-radius:14px!important;
  background:var(--tkg-card-bg,#fff)!important;
  box-shadow:0 3px 12px rgba(17,24,39,.07)!important;
}
body .tk-gastro-menu.tk-gastro-online-layout-standard .tk-gastro-products>.tk-gastro-item>.tk-gastro-item-image,
body .tk-gastro-menu.tk-gastro-online-layout-standard .tk-gastro-products>.tk-gastro-item>.tk-gastro-product-placeholder{
  flex:0 0 auto!important;
  width:100%!important;
  height:150px!important;
  min-width:0!important;
  min-height:150px!important;
  max-width:none!important;
  max-height:150px!important;
  margin:0!important;
  border-radius:0!important;
  overflow:hidden!important;
}
body .tk-gastro-menu.tk-gastro-online-layout-standard .tk-gastro-products>.tk-gastro-item .tk-gastro-image-button,
body .tk-gastro-menu.tk-gastro-online-layout-standard .tk-gastro-products>.tk-gastro-item .tk-gastro-product-image{
  display:block!important;width:100%!important;height:100%!important;
  min-width:0!important;min-height:0!important;max-width:none!important;max-height:none!important;
  margin:0!important;padding:0!important;border-radius:0!important;object-fit:cover!important;
}
body .tk-gastro-menu.tk-gastro-online-layout-standard .tk-gastro-item-body{
  display:flex!important;flex:1 1 auto!important;flex-direction:column!important;
  min-width:0!important;padding:13px 14px 12px!important;
}
body .tk-gastro-menu.tk-gastro-online-layout-standard .tk-gastro-item-main{
  display:flex!important;flex:1 1 auto!important;flex-direction:column!important;gap:8px!important;
}
body .tk-gastro-menu.tk-gastro-online-layout-standard .tk-gastro-variants{margin-top:auto!important;padding-top:7px!important;}
body .tk-gastro-menu.tk-gastro-online-layout-standard.tk-gastro-online-image-small .tk-gastro-products>.tk-gastro-item>.tk-gastro-item-image,
body .tk-gastro-menu.tk-gastro-online-layout-standard.tk-gastro-online-image-small .tk-gastro-products>.tk-gastro-item>.tk-gastro-product-placeholder{height:96px!important;min-height:96px!important;max-height:96px!important;}
body .tk-gastro-menu.tk-gastro-online-layout-standard.tk-gastro-online-image-large .tk-gastro-products>.tk-gastro-item>.tk-gastro-item-image,
body .tk-gastro-menu.tk-gastro-online-layout-standard.tk-gastro-online-image-large .tk-gastro-products>.tk-gastro-item>.tk-gastro-product-placeholder{height:210px!important;min-height:210px!important;max-height:210px!important;}
body .tk-gastro-menu.tk-gastro-online-layout-standard.tk-gastro-online-image-none .tk-gastro-products>.tk-gastro-item>.tk-gastro-item-image,
body .tk-gastro-menu.tk-gastro-online-layout-standard.tk-gastro-online-image-none .tk-gastro-products>.tk-gastro-item>.tk-gastro-product-placeholder{display:none!important;}

/* LISTE: eine Zeile je Gericht, Bild links, Varianten und Preise rechts. */
body .tk-gastro-menu.tk-gastro-online-layout-classic .tk-gastro-products{
  display:block!important;width:100%!important;
}
body .tk-gastro-menu.tk-gastro-online-layout-classic .tk-gastro-products>.tk-gastro-item,
body .tk-gastro-menu.tk-gastro-online-layout-classic .tk-gastro-products>.tk-gastro-item.has-image{
  display:grid!important;grid-template-columns:104px minmax(0,1fr)!important;
  gap:14px!important;align-items:start!important;width:100%!important;height:auto!important;
  margin:0!important;padding:12px 4px!important;overflow:visible!important;
  border:0!important;border-bottom:1px solid var(--tkg-border,#e3e7ed)!important;
  border-radius:0!important;background:transparent!important;box-shadow:none!important;
}
body .tk-gastro-menu.tk-gastro-online-layout-classic .tk-gastro-products>.tk-gastro-item:not(.has-image),
body .tk-gastro-menu.tk-gastro-online-layout-classic.tk-gastro-online-image-none .tk-gastro-products>.tk-gastro-item{
  grid-template-columns:minmax(0,1fr)!important;
}
body .tk-gastro-menu.tk-gastro-online-layout-classic .tk-gastro-products>.tk-gastro-item>.tk-gastro-item-image,
body .tk-gastro-menu.tk-gastro-online-layout-classic .tk-gastro-products>.tk-gastro-item>.tk-gastro-product-placeholder{
  width:104px!important;height:78px!important;min-width:104px!important;min-height:78px!important;
  max-width:104px!important;max-height:78px!important;margin:0!important;border-radius:8px!important;overflow:hidden!important;
}
body .tk-gastro-menu.tk-gastro-online-layout-classic .tk-gastro-image-button,
body .tk-gastro-menu.tk-gastro-online-layout-classic .tk-gastro-product-image{
  display:block!important;width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;
  margin:0!important;padding:0!important;border-radius:0!important;object-fit:cover!important;
}
body .tk-gastro-menu.tk-gastro-online-layout-classic .tk-gastro-item-body{min-width:0!important;padding:0!important;}
body .tk-gastro-menu.tk-gastro-online-layout-classic .tk-gastro-item-main{
  display:grid!important;grid-template-columns:minmax(0,1fr) minmax(150px,220px)!important;
  gap:16px!important;align-items:start!important;
}
body .tk-gastro-menu.tk-gastro-online-layout-classic .tk-gastro-variants{margin:0!important;padding:0!important;}

/* KOMPAKT: eine besonders flache Textzeile; Bilder bleiben optional und klein. */
body .tk-gastro-menu.tk-gastro-online-layout-compact .tk-gastro-products{
  display:block!important;width:100%!important;
}
body .tk-gastro-menu.tk-gastro-online-layout-compact .tk-gastro-products>.tk-gastro-item,
body .tk-gastro-menu.tk-gastro-online-layout-compact .tk-gastro-products>.tk-gastro-item.has-image{
  display:grid!important;grid-template-columns:58px minmax(0,1fr)!important;gap:10px!important;
  align-items:start!important;width:100%!important;height:auto!important;min-height:0!important;
  margin:0!important;padding:8px 2px!important;
  border:0!important;border-bottom:1px solid var(--tkg-border,#e3e7ed)!important;
  border-radius:0!important;background:transparent!important;box-shadow:none!important;
}
body .tk-gastro-menu.tk-gastro-online-layout-compact .tk-gastro-products>.tk-gastro-item:not(.has-image),
body .tk-gastro-menu.tk-gastro-online-layout-compact.tk-gastro-online-image-none .tk-gastro-products>.tk-gastro-item{
  grid-template-columns:minmax(0,1fr)!important;
}
body .tk-gastro-menu.tk-gastro-online-layout-compact .tk-gastro-products>.tk-gastro-item>.tk-gastro-item-image,
body .tk-gastro-menu.tk-gastro-online-layout-compact .tk-gastro-products>.tk-gastro-item>.tk-gastro-product-placeholder{
  width:58px!important;height:48px!important;min-width:58px!important;min-height:48px!important;
  max-width:58px!important;max-height:48px!important;margin:0!important;border-radius:6px!important;overflow:hidden!important;
}
body .tk-gastro-menu.tk-gastro-online-layout-compact .tk-gastro-image-button,
body .tk-gastro-menu.tk-gastro-online-layout-compact .tk-gastro-product-image{
  display:block!important;width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;
  margin:0!important;padding:0!important;border-radius:0!important;object-fit:cover!important;
}
body .tk-gastro-menu.tk-gastro-online-layout-compact .tk-gastro-item-body{min-width:0!important;padding:0!important;}
body .tk-gastro-menu.tk-gastro-online-layout-compact .tk-gastro-item-main{
  display:grid!important;grid-template-columns:minmax(0,1fr) minmax(135px,205px)!important;
  gap:12px!important;align-items:start!important;
}
body .tk-gastro-menu.tk-gastro-online-layout-compact .tk-gastro-item-title{font-size:.96rem!important;line-height:1.22!important;margin:0!important;}
body .tk-gastro-menu.tk-gastro-online-layout-compact .tk-gastro-description{
  display:-webkit-box!important;-webkit-box-orient:vertical!important;-webkit-line-clamp:1!important;
  overflow:hidden!important;margin:2px 0!important;font-size:.82rem!important;line-height:1.25!important;
}
body .tk-gastro-menu.tk-gastro-online-layout-compact .tk-gastro-quick-tags{margin-top:3px!important;gap:3px!important;}
body .tk-gastro-menu.tk-gastro-online-layout-compact .tk-gastro-variants{margin:0!important;padding:0!important;gap:2px!important;}
body .tk-gastro-menu.tk-gastro-online-layout-compact .tk-gastro-variant{min-height:0!important;padding:1px 0!important;}

@media(max-width:1050px){
  body .tk-gastro-menu.tk-gastro-online-layout-standard .tk-gastro-products{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
}
@media(max-width:700px){
  body .tk-gastro-menu.tk-gastro-online-layout-standard .tk-gastro-products{grid-template-columns:minmax(0,1fr)!important;gap:12px!important;}
  body .tk-gastro-menu.tk-gastro-online-layout-standard .tk-gastro-products>.tk-gastro-item{height:auto!important;}
  body .tk-gastro-menu.tk-gastro-online-layout-standard .tk-gastro-products>.tk-gastro-item>.tk-gastro-item-image,
  body .tk-gastro-menu.tk-gastro-online-layout-standard .tk-gastro-products>.tk-gastro-item>.tk-gastro-product-placeholder{height:160px!important;min-height:160px!important;max-height:160px!important;}
  body .tk-gastro-menu.tk-gastro-online-layout-classic .tk-gastro-products>.tk-gastro-item,
  body .tk-gastro-menu.tk-gastro-online-layout-classic .tk-gastro-products>.tk-gastro-item.has-image{grid-template-columns:76px minmax(0,1fr)!important;gap:10px!important;padding:10px 2px!important;}
  body .tk-gastro-menu.tk-gastro-online-layout-classic .tk-gastro-products>.tk-gastro-item>.tk-gastro-item-image,
  body .tk-gastro-menu.tk-gastro-online-layout-classic .tk-gastro-products>.tk-gastro-item>.tk-gastro-product-placeholder{width:76px!important;height:60px!important;min-width:76px!important;min-height:60px!important;max-width:76px!important;max-height:60px!important;}
  body .tk-gastro-menu.tk-gastro-online-layout-classic .tk-gastro-item-main,
  body .tk-gastro-menu.tk-gastro-online-layout-compact .tk-gastro-item-main{grid-template-columns:minmax(0,1fr)!important;gap:5px!important;}
  body .tk-gastro-menu.tk-gastro-online-layout-compact .tk-gastro-products>.tk-gastro-item,
  body .tk-gastro-menu.tk-gastro-online-layout-compact .tk-gastro-products>.tk-gastro-item.has-image{grid-template-columns:54px minmax(0,1fr)!important;gap:8px!important;}
  body .tk-gastro-menu.tk-gastro-online-layout-compact .tk-gastro-products>.tk-gastro-item>.tk-gastro-item-image,
  body .tk-gastro-menu.tk-gastro-online-layout-compact .tk-gastro-products>.tk-gastro-item>.tk-gastro-product-placeholder{width:54px!important;height:46px!important;min-width:54px!important;min-height:46px!important;max-width:54px!important;max-height:46px!important;}
}

/* ==========================================================
   KALVASS Gastro 0.32.03 – echte Bildgrößen in der digitalen Karte
   Die Auswahl Klein / Mittel / Groß ändert nicht nur eine Maximalhöhe,
   sondern den vollständigen Bildslot des jeweils gewählten Layouts.
   ========================================================== */

/* KACHELN – Bild über volle Kartenbreite. */
body .tk-gastro-menu.tk-gastro-online-layout-standard.tk-gastro-online-image-small .tk-gastro-products>.tk-gastro-item.has-image>.tk-gastro-item-image,
body .tk-gastro-menu.tk-gastro-online-layout-standard.tk-gastro-online-image-small .tk-gastro-products>.tk-gastro-item.has-image>.tk-gastro-item-image>.tk-gastro-image-button,
body .tk-gastro-menu.tk-gastro-online-layout-standard.tk-gastro-online-image-small .tk-gastro-products>.tk-gastro-item.has-image>.tk-gastro-item-image .tk-gastro-product-image{
  display:block!important;width:100%!important;max-width:none!important;height:100px!important;min-height:100px!important;max-height:100px!important;object-fit:cover!important;
}
body .tk-gastro-menu.tk-gastro-online-layout-standard.tk-gastro-online-image-medium .tk-gastro-products>.tk-gastro-item.has-image>.tk-gastro-item-image,
body .tk-gastro-menu.tk-gastro-online-layout-standard.tk-gastro-online-image-medium .tk-gastro-products>.tk-gastro-item.has-image>.tk-gastro-item-image>.tk-gastro-image-button,
body .tk-gastro-menu.tk-gastro-online-layout-standard.tk-gastro-online-image-medium .tk-gastro-products>.tk-gastro-item.has-image>.tk-gastro-item-image .tk-gastro-product-image{
  display:block!important;width:100%!important;max-width:none!important;height:165px!important;min-height:165px!important;max-height:165px!important;object-fit:cover!important;
}
body .tk-gastro-menu.tk-gastro-online-layout-standard.tk-gastro-online-image-large .tk-gastro-products>.tk-gastro-item.has-image>.tk-gastro-item-image,
body .tk-gastro-menu.tk-gastro-online-layout-standard.tk-gastro-online-image-large .tk-gastro-products>.tk-gastro-item.has-image>.tk-gastro-item-image>.tk-gastro-image-button,
body .tk-gastro-menu.tk-gastro-online-layout-standard.tk-gastro-online-image-large .tk-gastro-products>.tk-gastro-item.has-image>.tk-gastro-item-image .tk-gastro-product-image{
  display:block!important;width:100%!important;max-width:none!important;height:240px!important;min-height:240px!important;max-height:240px!important;object-fit:cover!important;
}

/* LISTE – echte unterschiedliche Bildspalten. */
body .tk-gastro-menu.tk-gastro-online-layout-classic.tk-gastro-online-image-small .tk-gastro-products>.tk-gastro-item.has-image{grid-template-columns:72px minmax(0,1fr)!important;}
body .tk-gastro-menu.tk-gastro-online-layout-classic.tk-gastro-online-image-medium .tk-gastro-products>.tk-gastro-item.has-image{grid-template-columns:122px minmax(0,1fr)!important;}
body .tk-gastro-menu.tk-gastro-online-layout-classic.tk-gastro-online-image-large .tk-gastro-products>.tk-gastro-item.has-image{grid-template-columns:184px minmax(0,1fr)!important;}
body .tk-gastro-menu.tk-gastro-online-layout-classic.tk-gastro-online-image-small .tk-gastro-products>.tk-gastro-item.has-image>.tk-gastro-item-image{width:72px!important;min-width:72px!important;max-width:72px!important;height:56px!important;min-height:56px!important;max-height:56px!important;}
body .tk-gastro-menu.tk-gastro-online-layout-classic.tk-gastro-online-image-medium .tk-gastro-products>.tk-gastro-item.has-image>.tk-gastro-item-image{width:122px!important;min-width:122px!important;max-width:122px!important;height:92px!important;min-height:92px!important;max-height:92px!important;}
body .tk-gastro-menu.tk-gastro-online-layout-classic.tk-gastro-online-image-large .tk-gastro-products>.tk-gastro-item.has-image>.tk-gastro-item-image{width:184px!important;min-width:184px!important;max-width:184px!important;height:132px!important;min-height:132px!important;max-height:132px!important;}
body .tk-gastro-menu.tk-gastro-online-layout-classic[class*="tk-gastro-online-image-"] .tk-gastro-products>.tk-gastro-item.has-image>.tk-gastro-item-image>.tk-gastro-image-button,
body .tk-gastro-menu.tk-gastro-online-layout-classic[class*="tk-gastro-online-image-"] .tk-gastro-products>.tk-gastro-item.has-image>.tk-gastro-item-image .tk-gastro-product-image{
  display:block!important;width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;object-fit:cover!important;
}

/* KOMPAKT – bleibt bewusst klein, aber die drei Stufen sind sichtbar unterscheidbar. */
body .tk-gastro-menu.tk-gastro-online-layout-compact.tk-gastro-online-image-small .tk-gastro-products>.tk-gastro-item.has-image{grid-template-columns:54px minmax(0,1fr)!important;}
body .tk-gastro-menu.tk-gastro-online-layout-compact.tk-gastro-online-image-medium .tk-gastro-products>.tk-gastro-item.has-image{grid-template-columns:82px minmax(0,1fr)!important;}
body .tk-gastro-menu.tk-gastro-online-layout-compact.tk-gastro-online-image-large .tk-gastro-products>.tk-gastro-item.has-image{grid-template-columns:116px minmax(0,1fr)!important;}
body .tk-gastro-menu.tk-gastro-online-layout-compact.tk-gastro-online-image-small .tk-gastro-products>.tk-gastro-item.has-image>.tk-gastro-item-image{width:54px!important;min-width:54px!important;max-width:54px!important;height:46px!important;min-height:46px!important;max-height:46px!important;}
body .tk-gastro-menu.tk-gastro-online-layout-compact.tk-gastro-online-image-medium .tk-gastro-products>.tk-gastro-item.has-image>.tk-gastro-item-image{width:82px!important;min-width:82px!important;max-width:82px!important;height:64px!important;min-height:64px!important;max-height:64px!important;}
body .tk-gastro-menu.tk-gastro-online-layout-compact.tk-gastro-online-image-large .tk-gastro-products>.tk-gastro-item.has-image>.tk-gastro-item-image{width:116px!important;min-width:116px!important;max-width:116px!important;height:86px!important;min-height:86px!important;max-height:86px!important;}
body .tk-gastro-menu.tk-gastro-online-layout-compact[class*="tk-gastro-online-image-"] .tk-gastro-products>.tk-gastro-item.has-image>.tk-gastro-item-image>.tk-gastro-image-button,
body .tk-gastro-menu.tk-gastro-online-layout-compact[class*="tk-gastro-online-image-"] .tk-gastro-products>.tk-gastro-item.has-image>.tk-gastro-item-image .tk-gastro-product-image{
  display:block!important;width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;object-fit:cover!important;
}

@media(max-width:700px){
  body .tk-gastro-menu.tk-gastro-online-layout-standard.tk-gastro-online-image-small .tk-gastro-products>.tk-gastro-item.has-image>.tk-gastro-item-image,
  body .tk-gastro-menu.tk-gastro-online-layout-standard.tk-gastro-online-image-small .tk-gastro-products>.tk-gastro-item.has-image>.tk-gastro-item-image>.tk-gastro-image-button,
  body .tk-gastro-menu.tk-gastro-online-layout-standard.tk-gastro-online-image-small .tk-gastro-products>.tk-gastro-item.has-image>.tk-gastro-item-image .tk-gastro-product-image{height:110px!important;min-height:110px!important;max-height:110px!important;}
  body .tk-gastro-menu.tk-gastro-online-layout-standard.tk-gastro-online-image-medium .tk-gastro-products>.tk-gastro-item.has-image>.tk-gastro-item-image,
  body .tk-gastro-menu.tk-gastro-online-layout-standard.tk-gastro-online-image-medium .tk-gastro-products>.tk-gastro-item.has-image>.tk-gastro-item-image>.tk-gastro-image-button,
  body .tk-gastro-menu.tk-gastro-online-layout-standard.tk-gastro-online-image-medium .tk-gastro-products>.tk-gastro-item.has-image>.tk-gastro-item-image .tk-gastro-product-image{height:170px!important;min-height:170px!important;max-height:170px!important;}
  body .tk-gastro-menu.tk-gastro-online-layout-standard.tk-gastro-online-image-large .tk-gastro-products>.tk-gastro-item.has-image>.tk-gastro-item-image,
  body .tk-gastro-menu.tk-gastro-online-layout-standard.tk-gastro-online-image-large .tk-gastro-products>.tk-gastro-item.has-image>.tk-gastro-item-image>.tk-gastro-image-button,
  body .tk-gastro-menu.tk-gastro-online-layout-standard.tk-gastro-online-image-large .tk-gastro-products>.tk-gastro-item.has-image>.tk-gastro-item-image .tk-gastro-product-image{height:230px!important;min-height:230px!important;max-height:230px!important;}
  body .tk-gastro-menu.tk-gastro-online-layout-classic.tk-gastro-online-image-medium .tk-gastro-products>.tk-gastro-item.has-image{grid-template-columns:92px minmax(0,1fr)!important;}
  body .tk-gastro-menu.tk-gastro-online-layout-classic.tk-gastro-online-image-large .tk-gastro-products>.tk-gastro-item.has-image{grid-template-columns:122px minmax(0,1fr)!important;}
  body .tk-gastro-menu.tk-gastro-online-layout-classic.tk-gastro-online-image-medium .tk-gastro-products>.tk-gastro-item.has-image>.tk-gastro-item-image{width:92px!important;min-width:92px!important;max-width:92px!important;height:70px!important;min-height:70px!important;max-height:70px!important;}
  body .tk-gastro-menu.tk-gastro-online-layout-classic.tk-gastro-online-image-large .tk-gastro-products>.tk-gastro-item.has-image>.tk-gastro-item-image{width:122px!important;min-width:122px!important;max-width:122px!important;height:92px!important;min-height:92px!important;max-height:92px!important;}
}

/* ==========================================================
   KALVASS Gastro 0.32.50 – Asia Classic Pickup: ruhiger, moderner
   ========================================================== */
.tk-gastro-menu.tk-gastro-order-mode.tk-gastro-style-asia-classic{
  background:#fbf8f2 !important;
}
.tk-gastro-menu.tk-gastro-order-mode.tk-gastro-style-asia-classic .tk-gastro-item{
  background:#fff !important;
  border:1px solid rgba(53,26,20,.10) !important;
  border-radius:14px !important;
  box-shadow:0 2px 10px rgba(53,26,20,.055) !important;
}
.tk-gastro-menu.tk-gastro-order-mode.tk-gastro-style-asia-classic .tk-gastro-item:hover{
  border-color:rgba(158,27,31,.22) !important;
  box-shadow:0 4px 14px rgba(53,26,20,.075) !important;
}
.tk-gastro-menu.tk-gastro-order-mode.tk-gastro-style-asia-classic .tk-gastro-menu-number{
  min-width:auto !important;padding:0 !important;border-radius:0 !important;background:transparent !important;
  color:var(--tk-gastro-accent,#9e1b1f) !important;box-shadow:none !important;font-weight:800 !important;
}
.tk-gastro-menu.tk-gastro-order-mode.tk-gastro-style-asia-classic .tk-gastro-price,
.tk-gastro-menu.tk-gastro-order-mode.tk-gastro-style-asia-classic .tk-gastro-variant strong{
  background:transparent !important;border:0 !important;color:var(--tkg-text,#351a14) !important;padding:0 !important;
}
.tk-gastro-menu.tk-gastro-order-mode.tk-gastro-style-asia-classic .tk-gastro-category>h3::before{display:none !important}
.tk-gastro-menu.tk-gastro-order-mode.tk-gastro-style-asia-classic .tk-gastro-category>h3::after{
  background:rgba(158,27,31,.16) !important;
}
.tk-gastro-menu.tk-gastro-order-mode.tk-gastro-style-asia-classic .tk-gastro-order-add{
  width:auto !important;min-width:42px !important;height:42px !important;padding:0 14px !important;border-radius:10px !important;
  box-shadow:none !important;
}
.tk-gastro-menu.tk-gastro-order-mode.tk-gastro-style-asia-classic .tk-gastro-order-inline-qty{
  border:1px solid rgba(53,26,20,.14) !important;border-radius:10px !important;background:#fff !important;padding:3px !important;gap:2px !important;
}
.tk-gastro-menu.tk-gastro-order-mode.tk-gastro-style-asia-classic .tk-gastro-order-inline-qty button{
  width:38px !important;height:38px !important;border:0 !important;border-radius:8px !important;background:#f5f1eb !important;color:var(--tk-gastro-accent,#9e1b1f) !important;
}
.tk-gastro-menu.tk-gastro-order-mode.tk-gastro-style-asia-classic .tk-gastro-order-inline-qty button[data-tk-inline-plus]{
  background:var(--tk-gastro-accent,#9e1b1f) !important;color:#fff !important;
}
.tk-gastro-menu.tk-gastro-order-mode.tk-gastro-style-asia-classic .tk-gastro-inline-note-toggle{
  color:var(--tk-gastro-accent,#9e1b1f) !important;background:transparent !important;border-color:rgba(158,27,31,.18) !important;
}


/* ==========================================================
   KALVASS Gastro 0.32.58 – sichere Rubriken-Spruenge unter Sticky
   Der reale untere Rand der fixierten Gastleiste wird vom JS als
   --tkg-live-sticky-bottom gepflegt. Native/programmatische Anker
   erhalten damit denselben Sicherheitsabstand auf iOS/Android.
   ========================================================== */
@media(max-width:1180px){
  body .tk-gastro-menu .tk-gastro-category{
    scroll-margin-top:calc(var(--tkg-live-sticky-bottom, var(--tkg-toolbar-height, 92px)) + 18px) !important;
  }
  body .tk-gastro-menu .tk-gastro-guest-toolbar.tkg-force-fixed{
    background:var(--tkg-surface,#fff) !important;
    box-shadow:0 5px 14px rgba(17,24,39,.10) !important;
  }
}


/* ==========================================================
   KALVASS Gastro 0.32.67 – Mobile Filter leicht breiter
   Nur Feintuning der oberen Gast-Toolbar auf Smartphones.
   ========================================================== */
@media screen and (max-width:600px){
  body .tk-gastro-menu.tkg-navigation-ready .tk-gastro-mobile-filter-toggle{
    min-width:76px!important;
    padding:.4rem .72rem!important;
  }
}


/* ==========================================================
   KALVASS Gastro 0.32.69 – Mobile Filter 130 Pixel
   Filter auf Smartphones bewusst deutlicher verbreitert.
   ========================================================== */
@media screen and (max-width:600px){
  body .tk-gastro-menu.tkg-navigation-ready .tk-gastro-mobile-filter-toggle{
    width:130px!important;
    min-width:130px!important;
    max-width:130px!important;
    padding:.4rem .95rem!important;
    box-sizing:border-box!important;
  }
}


/* ==========================================================
   KALVASS Gastro 0.32.70 – Mobile Filter echte 130 Pixel
   Direkter Selector: unabhaengig von tkg-navigation-ready.
   ========================================================== */
@media screen and (max-width:600px){
  body .tk-gastro-menu .tk-gastro-mobile-filter-toggle{
    flex:0 0 130px!important;
    width:130px!important;
    min-width:130px!important;
    max-width:130px!important;
    box-sizing:border-box!important;
    justify-content:center!important;
  }
}


/* ==========================================================
   KALVASS Gastro 0.32.71 – Mobile Filter 200 Pixel
   Exakte feste Breite auf Smartphones.
   ========================================================== */
@media screen and (max-width:600px){
  body .tk-gastro-menu .tk-gastro-mobile-filter-toggle{
    flex:0 0 200px!important;
    width:200px!important;
    min-width:200px!important;
    max-width:200px!important;
    box-sizing:border-box!important;
    justify-content:center!important;
  }
}

/* 0.33.25 – Mobil: kleines Bild links; mittel/gross volle Breite, unterschiedliche Hoehe. */
@media(max-width:600px){
body .tk-gastro-menu.tk-gastro-online-layout-standard.tk-gastro-online-image-small .tk-gastro-products>.tk-gastro-item.has-image{display:grid!important;grid-template-columns:88px minmax(0,1fr)!important;grid-template-areas:"image intro" "variants variants" "details details"!important;align-items:start!important;gap:8px 10px!important;padding:10px!important;box-sizing:border-box!important;}
body .tk-gastro-menu.tk-gastro-online-layout-standard.tk-gastro-online-image-small .tk-gastro-products>.tk-gastro-item.has-image>.tk-gastro-item-image{grid-area:image!important;justify-self:center!important;float:none!important;width:88px!important;min-width:0!important;max-width:100%!important;height:72px!important;min-height:72px!important;max-height:72px!important;margin:0!important;box-sizing:border-box!important;}
body .tk-gastro-menu.tk-gastro-online-layout-standard.tk-gastro-online-image-small .tk-gastro-products>.tk-gastro-item.has-image>.tk-gastro-item-image>.tk-gastro-image-button,body .tk-gastro-menu.tk-gastro-online-layout-standard.tk-gastro-online-image-small .tk-gastro-products>.tk-gastro-item.has-image>.tk-gastro-item-image .tk-gastro-product-image{display:block!important;width:100%!important;min-width:0!important;max-width:100%!important;height:72px!important;min-height:72px!important;max-height:72px!important;margin:0!important;box-sizing:border-box!important;object-fit:cover!important;}
body .tk-gastro-menu.tk-gastro-online-layout-standard.tk-gastro-online-image-small .tk-gastro-products>.tk-gastro-item.has-image>.tk-gastro-item-body,body .tk-gastro-menu.tk-gastro-online-layout-standard.tk-gastro-online-image-small .tk-gastro-products>.tk-gastro-item.has-image>.tk-gastro-item-body>.tk-gastro-item-main{display:contents!important;}
body .tk-gastro-menu.tk-gastro-online-layout-standard.tk-gastro-online-image-small .tk-gastro-products>.tk-gastro-item.has-image>.tk-gastro-item-body>.tk-gastro-item-main>div:first-child{grid-area:intro!important;min-width:0!important;}
body .tk-gastro-menu.tk-gastro-online-layout-standard.tk-gastro-online-image-small .tk-gastro-products>.tk-gastro-item.has-image .tk-gastro-item-main>.tk-gastro-variants,body .tk-gastro-menu.tk-gastro-online-layout-standard.tk-gastro-online-image-small .tk-gastro-products>.tk-gastro-item.has-image .tk-gastro-item-main>.tk-gastro-variant-picker{grid-area:variants!important;width:100%!important;min-width:0!important;margin:0!important;}
body .tk-gastro-menu.tk-gastro-online-layout-standard.tk-gastro-online-image-small .tk-gastro-products>.tk-gastro-item.has-image>.tk-gastro-item-body>.tk-gastro-details{grid-area:details!important;min-width:0!important;width:100%!important;margin:0!important;box-sizing:border-box!important;}
body .tk-gastro-menu.tk-gastro-online-layout-standard.tk-gastro-online-image-medium .tk-gastro-products>.tk-gastro-item.has-image{display:grid!important;grid-template-columns:minmax(0,1fr)!important;grid-template-areas:"image" "body"!important;gap:0!important;}
body .tk-gastro-menu.tk-gastro-online-layout-standard.tk-gastro-online-image-medium .tk-gastro-products>.tk-gastro-item.has-image>.tk-gastro-item-image{grid-area:image!important;justify-self:center!important;float:none!important;width:100%!important;min-width:0!important;max-width:100%!important;height:144px!important;min-height:144px!important;max-height:144px!important;margin:0!important;box-sizing:border-box!important;}
body .tk-gastro-menu.tk-gastro-online-layout-standard.tk-gastro-online-image-medium .tk-gastro-products>.tk-gastro-item.has-image>.tk-gastro-item-image>.tk-gastro-image-button,body .tk-gastro-menu.tk-gastro-online-layout-standard.tk-gastro-online-image-medium .tk-gastro-products>.tk-gastro-item.has-image>.tk-gastro-item-image .tk-gastro-product-image{display:block!important;width:100%!important;min-width:0!important;max-width:100%!important;height:144px!important;min-height:144px!important;max-height:144px!important;margin:0!important;box-sizing:border-box!important;object-fit:cover!important;}
body .tk-gastro-menu.tk-gastro-online-layout-standard.tk-gastro-online-image-medium .tk-gastro-products>.tk-gastro-item.has-image>.tk-gastro-item-body{grid-area:body!important;min-width:0!important;width:100%!important;box-sizing:border-box!important;}
body .tk-gastro-menu.tk-gastro-online-layout-standard.tk-gastro-online-image-large .tk-gastro-products>.tk-gastro-item.has-image{display:grid!important;grid-template-columns:minmax(0,1fr)!important;grid-template-areas:"image" "body"!important;gap:0!important;}
body .tk-gastro-menu.tk-gastro-online-layout-standard.tk-gastro-online-image-large .tk-gastro-products>.tk-gastro-item.has-image>.tk-gastro-item-image{grid-area:image!important;justify-self:center!important;float:none!important;width:100%!important;min-width:0!important;max-width:100%!important;height:220px!important;min-height:220px!important;max-height:220px!important;margin:0!important;box-sizing:border-box!important;}
body .tk-gastro-menu.tk-gastro-online-layout-standard.tk-gastro-online-image-large .tk-gastro-products>.tk-gastro-item.has-image>.tk-gastro-item-image>.tk-gastro-image-button,body .tk-gastro-menu.tk-gastro-online-layout-standard.tk-gastro-online-image-large .tk-gastro-products>.tk-gastro-item.has-image>.tk-gastro-item-image .tk-gastro-product-image{display:block!important;width:100%!important;min-width:0!important;max-width:100%!important;height:220px!important;min-height:220px!important;max-height:220px!important;margin:0!important;box-sizing:border-box!important;object-fit:cover!important;}
body .tk-gastro-menu.tk-gastro-online-layout-standard.tk-gastro-online-image-large .tk-gastro-products>.tk-gastro-item.has-image>.tk-gastro-item-body{grid-area:body!important;min-width:0!important;width:100%!important;box-sizing:border-box!important;}
body .tk-gastro-menu.tk-gastro-online-layout-classic.tk-gastro-online-image-small .tk-gastro-products>.tk-gastro-item.has-image{display:grid!important;grid-template-columns:88px minmax(0,1fr)!important;grid-template-areas:"image intro" "variants variants" "details details"!important;align-items:start!important;gap:8px 10px!important;padding:10px!important;box-sizing:border-box!important;}
body .tk-gastro-menu.tk-gastro-online-layout-classic.tk-gastro-online-image-small .tk-gastro-products>.tk-gastro-item.has-image>.tk-gastro-item-image{grid-area:image!important;justify-self:center!important;float:none!important;width:88px!important;min-width:0!important;max-width:100%!important;height:72px!important;min-height:72px!important;max-height:72px!important;margin:0!important;box-sizing:border-box!important;}
body .tk-gastro-menu.tk-gastro-online-layout-classic.tk-gastro-online-image-small .tk-gastro-products>.tk-gastro-item.has-image>.tk-gastro-item-image>.tk-gastro-image-button,body .tk-gastro-menu.tk-gastro-online-layout-classic.tk-gastro-online-image-small .tk-gastro-products>.tk-gastro-item.has-image>.tk-gastro-item-image .tk-gastro-product-image{display:block!important;width:100%!important;min-width:0!important;max-width:100%!important;height:72px!important;min-height:72px!important;max-height:72px!important;margin:0!important;box-sizing:border-box!important;object-fit:cover!important;}
body .tk-gastro-menu.tk-gastro-online-layout-classic.tk-gastro-online-image-small .tk-gastro-products>.tk-gastro-item.has-image>.tk-gastro-item-body,body .tk-gastro-menu.tk-gastro-online-layout-classic.tk-gastro-online-image-small .tk-gastro-products>.tk-gastro-item.has-image>.tk-gastro-item-body>.tk-gastro-item-main{display:contents!important;}
body .tk-gastro-menu.tk-gastro-online-layout-classic.tk-gastro-online-image-small .tk-gastro-products>.tk-gastro-item.has-image>.tk-gastro-item-body>.tk-gastro-item-main>div:first-child{grid-area:intro!important;min-width:0!important;}
body .tk-gastro-menu.tk-gastro-online-layout-classic.tk-gastro-online-image-small .tk-gastro-products>.tk-gastro-item.has-image .tk-gastro-item-main>.tk-gastro-variants,body .tk-gastro-menu.tk-gastro-online-layout-classic.tk-gastro-online-image-small .tk-gastro-products>.tk-gastro-item.has-image .tk-gastro-item-main>.tk-gastro-variant-picker{grid-area:variants!important;width:100%!important;min-width:0!important;margin:0!important;}
body .tk-gastro-menu.tk-gastro-online-layout-classic.tk-gastro-online-image-small .tk-gastro-products>.tk-gastro-item.has-image>.tk-gastro-item-body>.tk-gastro-details{grid-area:details!important;min-width:0!important;width:100%!important;margin:0!important;box-sizing:border-box!important;}
body .tk-gastro-menu.tk-gastro-online-layout-classic.tk-gastro-online-image-medium .tk-gastro-products>.tk-gastro-item.has-image{display:grid!important;grid-template-columns:minmax(0,1fr)!important;grid-template-areas:"image" "body"!important;gap:0!important;}
body .tk-gastro-menu.tk-gastro-online-layout-classic.tk-gastro-online-image-medium .tk-gastro-products>.tk-gastro-item.has-image>.tk-gastro-item-image{grid-area:image!important;justify-self:center!important;float:none!important;width:100%!important;min-width:0!important;max-width:100%!important;height:144px!important;min-height:144px!important;max-height:144px!important;margin:0!important;box-sizing:border-box!important;}
body .tk-gastro-menu.tk-gastro-online-layout-classic.tk-gastro-online-image-medium .tk-gastro-products>.tk-gastro-item.has-image>.tk-gastro-item-image>.tk-gastro-image-button,body .tk-gastro-menu.tk-gastro-online-layout-classic.tk-gastro-online-image-medium .tk-gastro-products>.tk-gastro-item.has-image>.tk-gastro-item-image .tk-gastro-product-image{display:block!important;width:100%!important;min-width:0!important;max-width:100%!important;height:144px!important;min-height:144px!important;max-height:144px!important;margin:0!important;box-sizing:border-box!important;object-fit:cover!important;}
body .tk-gastro-menu.tk-gastro-online-layout-classic.tk-gastro-online-image-medium .tk-gastro-products>.tk-gastro-item.has-image>.tk-gastro-item-body{grid-area:body!important;min-width:0!important;width:100%!important;box-sizing:border-box!important;}
body .tk-gastro-menu.tk-gastro-online-layout-classic.tk-gastro-online-image-large .tk-gastro-products>.tk-gastro-item.has-image{display:grid!important;grid-template-columns:minmax(0,1fr)!important;grid-template-areas:"image" "body"!important;gap:0!important;}
body .tk-gastro-menu.tk-gastro-online-layout-classic.tk-gastro-online-image-large .tk-gastro-products>.tk-gastro-item.has-image>.tk-gastro-item-image{grid-area:image!important;justify-self:center!important;float:none!important;width:100%!important;min-width:0!important;max-width:100%!important;height:220px!important;min-height:220px!important;max-height:220px!important;margin:0!important;box-sizing:border-box!important;}
body .tk-gastro-menu.tk-gastro-online-layout-classic.tk-gastro-online-image-large .tk-gastro-products>.tk-gastro-item.has-image>.tk-gastro-item-image>.tk-gastro-image-button,body .tk-gastro-menu.tk-gastro-online-layout-classic.tk-gastro-online-image-large .tk-gastro-products>.tk-gastro-item.has-image>.tk-gastro-item-image .tk-gastro-product-image{display:block!important;width:100%!important;min-width:0!important;max-width:100%!important;height:220px!important;min-height:220px!important;max-height:220px!important;margin:0!important;box-sizing:border-box!important;object-fit:cover!important;}
body .tk-gastro-menu.tk-gastro-online-layout-classic.tk-gastro-online-image-large .tk-gastro-products>.tk-gastro-item.has-image>.tk-gastro-item-body{grid-area:body!important;min-width:0!important;width:100%!important;box-sizing:border-box!important;}
body .tk-gastro-menu.tk-gastro-online-layout-compact.tk-gastro-online-image-small .tk-gastro-products>.tk-gastro-item.has-image{display:grid!important;grid-template-columns:88px minmax(0,1fr)!important;grid-template-areas:"image intro" "variants variants" "details details"!important;align-items:start!important;gap:8px 10px!important;padding:10px!important;box-sizing:border-box!important;}
body .tk-gastro-menu.tk-gastro-online-layout-compact.tk-gastro-online-image-small .tk-gastro-products>.tk-gastro-item.has-image>.tk-gastro-item-image{grid-area:image!important;justify-self:center!important;float:none!important;width:88px!important;min-width:0!important;max-width:100%!important;height:72px!important;min-height:72px!important;max-height:72px!important;margin:0!important;box-sizing:border-box!important;}
body .tk-gastro-menu.tk-gastro-online-layout-compact.tk-gastro-online-image-small .tk-gastro-products>.tk-gastro-item.has-image>.tk-gastro-item-image>.tk-gastro-image-button,body .tk-gastro-menu.tk-gastro-online-layout-compact.tk-gastro-online-image-small .tk-gastro-products>.tk-gastro-item.has-image>.tk-gastro-item-image .tk-gastro-product-image{display:block!important;width:100%!important;min-width:0!important;max-width:100%!important;height:72px!important;min-height:72px!important;max-height:72px!important;margin:0!important;box-sizing:border-box!important;object-fit:cover!important;}
body .tk-gastro-menu.tk-gastro-online-layout-compact.tk-gastro-online-image-small .tk-gastro-products>.tk-gastro-item.has-image>.tk-gastro-item-body,body .tk-gastro-menu.tk-gastro-online-layout-compact.tk-gastro-online-image-small .tk-gastro-products>.tk-gastro-item.has-image>.tk-gastro-item-body>.tk-gastro-item-main{display:contents!important;}
body .tk-gastro-menu.tk-gastro-online-layout-compact.tk-gastro-online-image-small .tk-gastro-products>.tk-gastro-item.has-image>.tk-gastro-item-body>.tk-gastro-item-main>div:first-child{grid-area:intro!important;min-width:0!important;}
body .tk-gastro-menu.tk-gastro-online-layout-compact.tk-gastro-online-image-small .tk-gastro-products>.tk-gastro-item.has-image .tk-gastro-item-main>.tk-gastro-variants,body .tk-gastro-menu.tk-gastro-online-layout-compact.tk-gastro-online-image-small .tk-gastro-products>.tk-gastro-item.has-image .tk-gastro-item-main>.tk-gastro-variant-picker{grid-area:variants!important;width:100%!important;min-width:0!important;margin:0!important;}
body .tk-gastro-menu.tk-gastro-online-layout-compact.tk-gastro-online-image-small .tk-gastro-products>.tk-gastro-item.has-image>.tk-gastro-item-body>.tk-gastro-details{grid-area:details!important;min-width:0!important;width:100%!important;margin:0!important;box-sizing:border-box!important;}
body .tk-gastro-menu.tk-gastro-online-layout-compact.tk-gastro-online-image-medium .tk-gastro-products>.tk-gastro-item.has-image{display:grid!important;grid-template-columns:minmax(0,1fr)!important;grid-template-areas:"image" "body"!important;gap:0!important;}
body .tk-gastro-menu.tk-gastro-online-layout-compact.tk-gastro-online-image-medium .tk-gastro-products>.tk-gastro-item.has-image>.tk-gastro-item-image{grid-area:image!important;justify-self:center!important;float:none!important;width:100%!important;min-width:0!important;max-width:100%!important;height:144px!important;min-height:144px!important;max-height:144px!important;margin:0!important;box-sizing:border-box!important;}
body .tk-gastro-menu.tk-gastro-online-layout-compact.tk-gastro-online-image-medium .tk-gastro-products>.tk-gastro-item.has-image>.tk-gastro-item-image>.tk-gastro-image-button,body .tk-gastro-menu.tk-gastro-online-layout-compact.tk-gastro-online-image-medium .tk-gastro-products>.tk-gastro-item.has-image>.tk-gastro-item-image .tk-gastro-product-image{display:block!important;width:100%!important;min-width:0!important;max-width:100%!important;height:144px!important;min-height:144px!important;max-height:144px!important;margin:0!important;box-sizing:border-box!important;object-fit:cover!important;}
body .tk-gastro-menu.tk-gastro-online-layout-compact.tk-gastro-online-image-medium .tk-gastro-products>.tk-gastro-item.has-image>.tk-gastro-item-body{grid-area:body!important;min-width:0!important;width:100%!important;box-sizing:border-box!important;}
body .tk-gastro-menu.tk-gastro-online-layout-compact.tk-gastro-online-image-large .tk-gastro-products>.tk-gastro-item.has-image{display:grid!important;grid-template-columns:minmax(0,1fr)!important;grid-template-areas:"image" "body"!important;gap:0!important;}
body .tk-gastro-menu.tk-gastro-online-layout-compact.tk-gastro-online-image-large .tk-gastro-products>.tk-gastro-item.has-image>.tk-gastro-item-image{grid-area:image!important;justify-self:center!important;float:none!important;width:100%!important;min-width:0!important;max-width:100%!important;height:220px!important;min-height:220px!important;max-height:220px!important;margin:0!important;box-sizing:border-box!important;}
body .tk-gastro-menu.tk-gastro-online-layout-compact.tk-gastro-online-image-large .tk-gastro-products>.tk-gastro-item.has-image>.tk-gastro-item-image>.tk-gastro-image-button,body .tk-gastro-menu.tk-gastro-online-layout-compact.tk-gastro-online-image-large .tk-gastro-products>.tk-gastro-item.has-image>.tk-gastro-item-image .tk-gastro-product-image{display:block!important;width:100%!important;min-width:0!important;max-width:100%!important;height:220px!important;min-height:220px!important;max-height:220px!important;margin:0!important;box-sizing:border-box!important;object-fit:cover!important;}
body .tk-gastro-menu.tk-gastro-online-layout-compact.tk-gastro-online-image-large .tk-gastro-products>.tk-gastro-item.has-image>.tk-gastro-item-body{grid-area:body!important;min-width:0!important;width:100%!important;box-sizing:border-box!important;}
}

/* 0.33.26 – Lesbare mobile Beschreibungen und Hinweise, Digital und Orders. */
@media(max-width:600px){
body .tk-gastro-menu.tk-gastro-menu[class*="-layout-"] .tk-gastro-products>.tk-gastro-item .tk-gastro-item-title{font-size:16px!important;line-height:1.3!important;}
body .tk-gastro-menu.tk-gastro-menu[class*="-layout-"] .tk-gastro-products>.tk-gastro-item .tk-gastro-description,
body .tk-gastro-menu.tk-gastro-menu[class*="-layout-"] .tk-gastro-products>.tk-gastro-item .tk-gastro-selection-summary{font-size:14px!important;line-height:1.45!important;}
body .tk-gastro-menu.tk-gastro-menu[class*="-layout-"] .tk-gastro-products>.tk-gastro-item .tk-gastro-details>summary,
body .tk-gastro-menu.tk-gastro-menu[class*="-layout-"] .tk-gastro-products>.tk-gastro-item .tk-gastro-quick-tag{font-size:13px!important;line-height:1.4!important;}
}

/* 0.33.49: Trefferzaehler und gezielte Kontrastkorrektur */
.tk-gastro-menu .tkg-visible-result-count{padding:9px 14px;font-size:14px;font-weight:700;color:var(--tkg-text,#f7f2e8);background:var(--tkg-surface,#242424);border:1px solid var(--tkg-border,#555);border-radius:10px;margin:8px 0 12px;}
.tk-gastro-menu.tk-gastro-order-mode .tk-gastro-order-inline-qty button[data-tk-inline-minus]{background:#37332e!important;color:#fff!important;border:1px solid #79736b!important;opacity:1!important;}
.tk-gastro-menu.tk-gastro-order-mode .tk-gastro-order-inline-qty button[data-tk-inline-minus]:disabled{background:#e5e0d8!important;color:#605a52!important;opacity:1!important;}
.tk-gastro-menu.tk-gastro-order-mode .tk-gastro-order-inline-qty input,.tk-gastro-menu.tk-gastro-order-mode .tk-gastro-order-inline-qty output,.tk-gastro-menu.tk-gastro-order-mode .tk-gastro-order-inline-qty span{color:#25211c!important;font-weight:700!important;}

/* 0.33.51.26.3 – Tenant-specific category headings only, never filter/category buttons.
   Fallback preserves legacy colors when no custom category color was saved. */
.tk-gastro-menu[style*="--kg-category-heading-ink"] .tk-gastro-category>h3,
.tk-gastro-menu[style*="--kg-category-heading-ink"] .tk-gastro-category-heading>h3,
.tk-gastro-menu[style*="--kg-category-heading-ink"] .tk-gastro-category>h3 .tk-gastro-category-title {
  color:var(--kg-category-heading-ink) !important;
}

/* 0.33.51.26.4 – Saved tenant category text color, independent of section style variants. */
body .tk-gastro-menu[style*="--kg-category-heading-ink"] .tk-gastro-category > h3,
body .tk-gastro-menu[style*="--kg-category-heading-ink"] .tk-gastro-category > h3 > .tk-gastro-category-title,
body .tk-gastro-menu[style*="--kg-category-heading-ink"] .tk-gastro-category-heading > h3,
body .tk-gastro-menu[style*="--kg-category-heading-ink"] .tk-gastro-category-heading > h3 > .tk-gastro-category-title {
 color: var(--kg-category-heading-ink) !important;
 -webkit-text-fill-color: var(--kg-category-heading-ink) !important;
}

/* 0.33.51.26.5: Apply per-tenant heading variable without brittle style substring selectors. */
.tk-gastro-menu .tk-gastro-category > h3 > .tk-gastro-category-title,
.tk-gastro-menu .tk-gastro-category-heading > h3 > .tk-gastro-category-title { color: var(--kg-category-heading-ink, var(--tk-gastro-accent, currentColor)) !important; }
