.plb-order-app{max-width:1120px;width:100%;margin:auto;font-size:14px}.plb-order-app h2{margin-bottom:10px}.plb-category-tabs{display:flex;gap:5px;overflow:auto;margin:0 0 8px;padding-bottom:3px}.plb-category-tab{white-space:nowrap;border:1px solid #ddd;background:#fafafa;border-radius:6px;padding:6px 12px;cursor:pointer;font-size:13px}.plb-category-tab.is-active{background:#333;color:#fff;border-color:#333}.plb-menu-list{border:1px solid #e5e5e5;border-radius:7px;overflow-y:auto;max-height:430px}.plb-menu-item{display:grid;grid-template-columns:38px minmax(145px,1fr) 70px 68px minmax(120px,.75fr);gap:7px;align-items:center;padding:6px 8px;border-bottom:1px solid #eee;background:#fff}.plb-menu-item[hidden]{display:none!important}.plb-menu-item:last-child{border-bottom:0}.plb-number{font-weight:800;text-align:center;font-size:12px}.plb-item-main{display:flex;flex-direction:column;line-height:1.15}.plb-item-main strong{font-size:13px}.plb-item-main small{opacity:.68;margin-top:2px;font-size:11px}.plb-price{font-weight:700;text-align:right;font-size:13px}.plb-qty{display:flex;align-items:center;gap:4px;font-size:10px}.plb-qty input{width:44px;padding:4px}.plb-item-note{min-width:0;padding:5px;font-size:12px}.plb-customer-fields{display:grid;grid-template-columns:1fr 1fr 1fr;gap:9px;margin-top:12px}.plb-customer-fields label{display:flex;flex-direction:column;gap:4px;font-size:12px}.plb-customer-fields input,.plb-customer-fields textarea,.plb-customer-fields select{padding:7px;font-size:13px}.plb-customer-fields .plb-wide{grid-column:1/-1}.plb-customer-fields textarea{min-height:55px}.plb-order-summary{margin-top:12px;border:1px solid #ddd;border-radius:7px;background:#fafafa;padding:9px}.plb-summary-head{display:flex;justify-content:space-between;border-bottom:1px solid #e5e5e5;padding-bottom:6px;margin-bottom:5px}.plb-summary-head strong:last-child{font-size:16px}.plb-summary-lines>div{display:flex;justify-content:space-between;gap:10px;padding:3px 0}.plb-summary-lines span{min-width:0}.plb-summary-lines small{display:block;color:#765b00}.plb-consent{display:block;margin:10px 0;font-size:12px}.plb-arrived-toggle,.plb-submit{padding:9px 14px;font-weight:700;border-radius:6px;cursor:pointer}.plb-arrived-toggle{background:#fff;border:2px solid #2271b1;color:#175b91;margin-right:6px}.plb-arrived-toggle.is-active{background:#2271b1;color:#fff}.plb-submit{background:#222;color:#fff;border:2px solid #222}.plb-order-result,#plb-order-result{margin-top:9px;font-size:13px}.plb-customer-tracker{display:grid;grid-template-columns:minmax(170px,.7fr) minmax(260px,1.4fr) auto;gap:14px;align-items:center;margin-top:16px;padding:18px;border:4px solid #2271b1;border-radius:12px;background:#f5faff;box-shadow:0 4px 14px rgba(0,0,0,.08)}.plb-customer-tracker small,.plb-customer-tracker strong{display:block}.plb-customer-tracker #plb-track-number{font-size:30px;line-height:1.05;letter-spacing:.5px}.plb-customer-tracker #plb-track-status{font-size:24px;line-height:1.1}.plb-customer-tracker button{padding:12px 16px;font-weight:800}.plb-customer-tracker p{grid-column:1/-1;margin:0;text-align:center}.plb-customer-tracker.is-ready{border-width:7px;border-color:#00a32a;background:#eafbed;animation:plb-ready-pulse 1.4s infinite alternate}.plb-customer-tracker.is-ready #plb-track-number{font-size:38px;color:#087c27}.plb-customer-tracker.is-ready #plb-track-status{font-size:38px;color:#087c27;font-weight:900}.plb-customer-tracker.is-completed{border-color:#777;background:#eee}.plb-customer-tracker.is-rejected{border-color:#d63638;background:#fff4f4}@keyframes plb-ready-pulse{from{box-shadow:0 0 0 0 rgba(0,163,42,.18)}to{box-shadow:0 0 0 12px rgba(0,163,42,0)}}@media(max-width:760px){.plb-menu-list{max-height:380px}.plb-menu-item{grid-template-columns:34px 1fr 62px 58px}.plb-item-note{grid-column:2/-1}.plb-customer-fields{grid-template-columns:1fr}.plb-customer-tracker{grid-template-columns:1fr;text-align:center}.plb-customer-tracker p{grid-column:auto}.plb-customer-tracker.is-ready #plb-track-status{font-size:30px}}
.plb-customer-tracker #plb-track-number{white-space:nowrap;word-break:normal;overflow-wrap:normal}.plb-customer-tracker{width:100%;box-sizing:border-box}

.plb-estimated-time{margin-top:7px;padding-top:7px;border-top:1px solid #ddd;text-align:right;font-size:13px}
.plb-estimated-time strong{display:inline-block;background:#171717;color:#fff;padding:4px 8px;border-radius:4px;margin-left:4px}
.plb-estimated-time strong.is-long{background:#c40000;color:#fff;font-weight:900;animation:plb-attention 1s infinite alternate}
@keyframes plb-attention{from{box-shadow:0 0 0 0 rgba(196,0,0,.2)}to{box-shadow:0 0 0 6px rgba(196,0,0,0)}}

.plb-status-lookup{margin-top:16px;padding:12px;border:1px solid #ddd;border-radius:8px;background:#fafafa}
.plb-status-lookup h3{margin:0 0 3px;font-size:16px}
.plb-status-lookup p{margin:0 0 8px;font-size:12px}
#plb-status-lookup-form{display:flex;align-items:center;gap:6px}
.plb-code-prefix{font-size:20px;font-weight:900}
#plb-status-code{width:105px;text-transform:uppercase;letter-spacing:3px;font-size:18px;font-weight:900;text-align:center;padding:7px}
#plb-status-lookup-form button{padding:8px 12px}
#plb-status-lookup-message{min-height:18px;margin-top:6px;font-size:12px;font-weight:700}

/* 0.6.6 compact, flatter frontend */
.plb-order-app button,
.plb-status-lookup button,
.plb-arrived-toggle,
.plb-submit,
#plb-arrived-button{
  border-radius:4px!important;
  box-shadow:none!important;
  min-height:34px;
  padding:7px 12px!important;
}
.plb-status-lookup{
  padding:9px 10px!important;
  border-radius:5px!important;
}
.plb-status-lookup h3{font-size:14px!important}
#plb-status-lookup-form{gap:5px!important}
#plb-status-code{
  height:34px;
  border-radius:4px!important;
  font-size:16px!important;
  padding:4px 6px!important;
}
.plb-customer-tracker{
  grid-template-columns:minmax(150px,.7fr) minmax(220px,1.35fr) auto!important;
  gap:10px!important;
  padding:12px!important;
  border-width:3px!important;
  border-radius:6px!important;
  box-shadow:none!important;
}
.plb-customer-tracker #plb-track-number{font-size:24px!important}
.plb-customer-tracker #plb-track-status{font-size:20px!important}
.plb-customer-tracker.is-ready{
  border-width:4px!important;
  animation:none!important;
}
.plb-customer-tracker.is-ready #plb-track-number{font-size:28px!important}
.plb-customer-tracker.is-ready #plb-track-status{font-size:26px!important}
#plb-track-target{
  display:block;
  margin-top:3px;
  font-size:12px;
  font-weight:700;
}
.plb-track-status-box{min-width:0}
@media(max-width:760px){
  .plb-customer-tracker{grid-template-columns:1fr!important}
  .plb-customer-tracker.is-ready #plb-track-status{font-size:22px!important}
}

/* 0.6.7 target time emphasis */
#plb-track-target{
  font-size:16px!important;
  font-weight:900!important;
  color:#111!important;
  margin-top:6px!important;
}
.plb-customer-tracker.is-ready #plb-track-target{color:#087c27!important}
.plb-estimated-time{font-size:15px!important}
.plb-estimated-time strong{
  font-size:18px!important;
  padding:6px 10px!important;
}

/* 0.7.0 live target time */
#plb-track-target{
  display:block;
  font-size:18px!important;
  line-height:1.25;
  font-weight:900!important;
  padding:5px 7px;
  background:#181818;
  color:#fff!important;
  border-radius:3px;
}
#plb-track-target.is-time-changed{
  background:#c90000!important;
  color:#fff!important;
  animation:plb-time-change 1s 5 alternate;
}
@keyframes plb-time-change{
  from{transform:scale(1)}
  to{transform:scale(1.025)}
}

/* 0.7.1 reliable time-change notice */
#plb-track-target{
  background:#181818!important;
  color:#fff!important;
}
#plb-track-target.is-time-changed{
  background:#c90000!important;
  color:#fff!important;
}
#plb-track-target.is-time-flash{
  animation:plb-time-flash .55s 4 alternate!important;
}
@keyframes plb-time-flash{
  from{background:#c90000;transform:scale(1)}
  to{background:#ff3b30;transform:scale(1.035)}
}



/* 0.7.5 mobile layout repair */
.plb-order-app{
  min-width:0!important;
  overflow:visible!important;
}

.plb-order-app > h2{
  font-family:inherit!important;
  font-size:30px!important;
  line-height:1.15!important;
  font-weight:800!important;
  letter-spacing:0!important;
  text-transform:none!important;
  margin:0 0 14px!important;
  padding:0!important;
  word-break:normal!important;
}

.plb-menu-list,
.plb-menu-item,
.plb-item-main,
.plb-item-note{
  min-width:0!important;
}

.plb-price{
  white-space:nowrap!important;
}

@media(max-width:760px){
  .plb-order-app{
    width:100%!important;
    max-width:100%!important;
    padding:0 12px!important;
    margin-left:0!important;
    margin-right:0!important;
    overflow-x:hidden!important;
  }

  .plb-order-app > h2{
    font-size:26px!important;
    line-height:1.1!important;
    margin-bottom:12px!important;
  }

  .plb-category-tabs{
    width:100%!important;
    max-width:100%!important;
    gap:6px!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    padding-bottom:5px!important;
    scrollbar-width:none;
  }

  .plb-category-tabs::-webkit-scrollbar{
    display:none;
  }

  .plb-category-tab{
    flex:0 0 auto!important;
    font-size:13px!important;
    padding:7px 12px!important;
    border-radius:4px!important;
  }

  .plb-menu-list{
    width:100%!important;
    max-width:100%!important;
    overflow-x:hidden!important;
  }

  .plb-menu-item{
    width:100%!important;
    grid-template-columns:28px minmax(0,1fr) 72px 50px!important;
    grid-template-areas:
      "number main price qty"
      ". note note note"!important;
    column-gap:7px!important;
    row-gap:7px!important;
    align-items:center!important;
    padding:9px 8px!important;
  }

  .plb-number{
    grid-area:number;
    font-size:13px!important;
  }

  .plb-item-main{
    grid-area:main;
    overflow:hidden!important;
  }

  .plb-item-main strong{
    font-size:14px!important;
    line-height:1.15!important;
    overflow-wrap:anywhere;
  }

  .plb-item-main small{
    font-size:11px!important;
    line-height:1.18!important;
    overflow-wrap:anywhere;
  }

  .plb-price{
    grid-area:price;
    font-size:14px!important;
    text-align:right!important;
  }

  .plb-qty{
    grid-area:qty;
    width:50px!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    gap:2px!important;
    text-align:center!important;
  }

  .plb-qty span{
    display:block!important;
    white-space:nowrap!important;
    font-size:9px!important;
    line-height:1!important;
  }

  .plb-qty input{
    width:50px!important;
    max-width:50px!important;
    min-width:0!important;
    height:36px!important;
    padding:4px!important;
    text-align:center!important;
    font-size:17px!important;
  }

  .plb-item-note{
    grid-area:note;
    width:100%!important;
    max-width:100%!important;
    height:36px!important;
    font-size:13px!important;
    padding:6px 8px!important;
  }

  .plb-customer-fields{
    width:100%!important;
    max-width:100%!important;
  }

  .plb-customer-fields input,
  .plb-customer-fields textarea,
  .plb-customer-fields select{
    width:100%!important;
    max-width:100%!important;
  }
}

@media(max-width:390px){
  .plb-order-app{
    padding:0 8px!important;
  }

  .plb-menu-item{
    grid-template-columns:25px minmax(0,1fr) 66px 46px!important;
    column-gap:5px!important;
    padding:8px 6px!important;
  }

  .plb-price{
    font-size:13px!important;
  }

  .plb-qty,
  .plb-qty input{
    width:46px!important;
    max-width:46px!important;
  }
}

/* 0.7.6: ausschließlich Plugin-Elemente, keine Theme- oder Menüklassen */
.plb-order-app,
.plb-public-kitchen,
.plb-callout-app,
.plb-menu-editor{
  position:relative!important;
  z-index:auto!important;
  isolation:auto!important;
}

.plb-order-app *,
.plb-public-kitchen *,
.plb-callout-app *,
.plb-menu-editor *{
  box-sizing:border-box;
}

.plb-public-kitchen:fullscreen,
.plb-callout-app:fullscreen{
  margin-top:0!important;
}
