html body .plb-breakfast,html body .plb-breakfast *,#page-container .plb-breakfast,#page-container .plb-breakfast *{font-family:"Trebuchet MS",Trebuchet,Arial,sans-serif!important}
.plb-breakfast{--accent:#760076;max-width:900px;margin:2rem auto;padding:clamp(1rem,3vw,2.5rem);background:#fffdfb;border:1px solid #eee7ed;border-radius:28px;color:#2b2630}.plb-breakfast-test{display:inline-block;background:#efe5dc;color:#6a3f24;padding:.4rem .7rem;border-radius:999px;font-weight:800;font-size:.76rem}.plb-breakfast-eyebrow{font-size:.76rem;letter-spacing:.12em;color:#8b7e8d;margin-top:1rem}.plb-breakfast h2{font-size:clamp(2rem,5vw,3.3rem);font-weight:500;line-height:1.05;margin:.4rem 0 1rem}.plb-breakfast p{color:#6f6873;line-height:1.6}.plb-breakfast-time{display:flex;flex-direction:column;gap:.45rem;margin:1.4rem 0;font-weight:700}.plb-breakfast-time select{padding:.85rem 1rem;border-radius:14px;border:1px solid #ddd3dd;background:#fff;font:inherit}.plb-breakfast-category{margin:2rem 0}.plb-breakfast-category-title{font-size:1.15rem;font-weight:750;margin-bottom:.8rem}.plb-breakfast-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem}.plb-breakfast-card{position:relative;border:1px solid #e5dde5;border-radius:18px;padding:.75rem;background:#fff;cursor:pointer;transition:.2s ease}.plb-breakfast-card.is-selected{border-color:var(--accent);box-shadow:0 0 0 2px rgba(118,0,118,.08);background:#fcf8fc}.plb-breakfast-card input{position:absolute;top:.65rem;right:.65rem;accent-color:var(--accent)}.plb-breakfast-image{display:flex;align-items:center;justify-content:center;aspect-ratio:4/3;background:#f7f4f6;border-radius:13px;overflow:hidden;margin-bottom:.75rem}.plb-breakfast-image img{width:100%;height:100%;object-fit:cover}.plb-breakfast-placeholder{font-size:.78rem;color:#9a919b;text-align:center;padding:1rem}.plb-breakfast-name{display:block;font-weight:700;line-height:1.25}.plb-breakfast-attrs{display:block;font-size:.78rem;color:#807683;margin-top:.25rem}.plb-breakfast-price{display:block;color:var(--accent);margin-top:.55rem}.plb-breakfast-footer{position:sticky;bottom:.6rem;display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.1rem;background:rgba(255,253,251,.96);border:1px solid #e5dde5;border-radius:18px;box-shadow:0 14px 40px rgba(60,40,65,.1);backdrop-filter:blur(10px)}.plb-breakfast-footer span,.plb-breakfast-footer small{display:block;color:#746b77}.plb-breakfast-footer strong{display:block;font-size:1.2rem}.plb-breakfast-submit{border:0;background:var(--accent);color:#fff;padding:.85rem 1rem;border-radius:999px;font:inherit;font-weight:750;cursor:pointer}.plb-breakfast-error{padding:1rem;background:#fff0ef;color:#8e2118!important;border-radius:14px}.plb-breakfast-done{margin-top:1rem;padding:1rem;background:#edf7ef;color:#245b2d;border-radius:14px}@media(max-width:760px){.plb-breakfast{margin:.5rem .25rem;border-radius:20px}.plb-breakfast-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.plb-breakfast-footer{align-items:flex-start;flex-direction:column}.plb-breakfast-submit{width:100%}}@media(max-width:430px){.plb-breakfast-grid{grid-template-columns:1fr 1fr;gap:.55rem}.plb-breakfast-card{padding:.55rem}.plb-breakfast-name{font-size:.9rem}}
.plb-copy-yesterday{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1rem;border-radius:16px;background:#f8f4f7;margin:1rem 0}.plb-copy-yesterday strong,.plb-copy-yesterday span{display:block}.plb-copy-yesterday span{font-size:.84rem;color:#746b77;margin-top:.2rem}.plb-copy-yesterday button{border:1px solid #cdbdcd;background:#fff;color:#760076;padding:.65rem .8rem;border-radius:999px;font:inherit;cursor:pointer}@media(max-width:600px){.plb-copy-yesterday{align-items:flex-start;flex-direction:column}.plb-copy-yesterday button{width:100%}}

.plb-breakfast-submit,.plb-copy-yesterday button{border-radius:15px!important;border:1px solid #760076!important;background:#fff!important;color:#760076!important}.plb-breakfast-submit:hover,.plb-breakfast-submit:focus-visible,.plb-copy-yesterday button:hover,.plb-copy-yesterday button:focus-visible{background:#760076!important;color:#fff!important}

/* v0.9.4 radius */
.plb-breakfast button, .plb-breakfast input, .plb-breakfast select, .plb-breakfast textarea{border-radius:5px!important}

/* v0.9.6 breakfast customer view */
.plb-breakfast,.plb-breakfast *{--accent:#760076}.plb-breakfast,.plb-breakfast-card,.plb-breakfast-image,.plb-breakfast-footer,.plb-copy-yesterday,.plb-breakfast-time select,.plb-breakfast button,.plb-breakfast input,.plb-breakfast select{border-radius:5px!important}.plb-breakfast-qty{display:grid;grid-template-columns:32px 30px 32px;justify-content:center;align-items:center;gap:4px;margin-top:8px}.plb-breakfast-qty button{width:32px;height:32px;border:1px solid #760076;background:#fff;color:#760076;font-weight:700}.plb-breakfast-overage-info{font-size:.86rem;color:#5f5360!important;background:#faf6fa;border-left:3px solid #760076;padding:8px 10px;margin-top:8px}

/* v0.9.8 visual breakfast cards */
.plb-breakfast{border-radius:5px!important;max-width:1120px!important}.plb-breakfast-card{padding:10px!important;border:1.5px solid #dfd2de!important;border-radius:5px!important;background:#fff!important}.plb-breakfast-card.is-selected{border-color:#760076!important;box-shadow:0 0 0 1px rgba(118,0,118,.16)!important}.plb-breakfast-card>input[type=checkbox]{position:absolute!important;opacity:0!important;pointer-events:none!important}.plb-breakfast-name{font-size:1.05rem!important;font-weight:750!important;margin:0 0 8px!important}.plb-breakfast-image{position:relative!important;aspect-ratio:4/3!important;margin:0!important;border-radius:5px!important;background:#faf7fa!important}.plb-breakfast-price{position:absolute;left:14px;bottom:14px;z-index:2;background:rgba(255,255,255,.92);padding:5px 8px;border-radius:5px!important}.plb-breakfast-bubbles{position:absolute!important;right:12px!important;bottom:12px!important;display:flex!important;gap:8px!important;align-items:center!important;z-index:4}.plb-breakfast-action-bubble,.plb-breakfast-count-bubble{width:48px!important;height:48px!important;border-radius:50%!important;background:#760076!important;color:#fff!important;border:0!important;display:grid!important;place-items:center!important;font-weight:800!important;font-size:1rem!important;box-shadow:0 5px 15px rgba(118,0,118,.18)}.plb-breakfast-count-bubble{display:none!important}.plb-breakfast-card.is-selected .plb-breakfast-count-bubble{display:grid!important}.plb-breakfast-card[data-max-qty="1"].is-selected .plb-breakfast-action-bubble{display:none!important}.plb-breakfast-footer{border-radius:5px!important}@media(max-width:760px){.plb-breakfast-grid{grid-template-columns:1fr!important}.plb-breakfast-image{aspect-ratio:4/3!important}}

/* v0.9.23 – breakfast quantity controls */
.plb-breakfast-bubbles{
  right:12px!important;
  bottom:12px!important;
  gap:8px!important;
  align-items:center!important;
}

/* Default + button while nothing is selected. */
.plb-breakfast-action-bubble{
  width:46px!important;
  height:46px!important;
  min-width:46px!important;
  border-radius:5px!important;
  border:2px solid #760076!important;
  background:#fff!important;
  color:#760076!important;
  box-shadow:none!important;
  font-size:1.12rem!important;
  line-height:1!important;
  font-weight:800!important;
}

/* Once the round quantity bubble is visible, +/- becomes deliberately smaller. */
.plb-breakfast-card.is-selected .plb-breakfast-action-bubble{
  width:34px!important;
  height:34px!important;
  min-width:34px!important;
  border-radius:5px!important;
  font-size:.95rem!important;
}

/* Quantity is always a round, outlined white bubble with purple number. */
.plb-breakfast-count-bubble{
  width:48px!important;
  height:48px!important;
  min-width:48px!important;
  border-radius:50%!important;
  border:2px solid #760076!important;
  background:#fff!important;
  color:#760076!important;
  box-shadow:none!important;
  font-size:1rem!important;
  font-weight:800!important;
}

/* 0× must never be visible. It only appears after the item has quantity >= 1. */
.plb-breakfast-card:not(.is-selected) .plb-breakfast-count-bubble{
  display:none!important;
}
.plb-breakfast-card.is-selected .plb-breakfast-count-bubble{
  display:grid!important;
}

/* max. 1: after choosing the item the quantity bubble is enough; clicking the card again
   is not used as a hidden decrement. */
.plb-breakfast-card[data-max-qty="1"].is-selected .plb-breakfast-action-bubble{
  display:none!important;
}

/* v0.9.24 – explicit deselection */
.plb-breakfast-card[data-max-qty="1"].is-selected .plb-breakfast-action-bubble{
  display:grid!important;
  width:34px!important;
  height:34px!important;
  min-width:34px!important;
}

/* v0.9.30 – breakfast quantity state: 0× is impossible */
.plb-breakfast-count-bubble[hidden],
.plb-breakfast-card[data-qty="0"] .plb-breakfast-count-bubble{
  display:none!important;
}
.plb-breakfast-card:not([data-qty="0"]) .plb-breakfast-count-bubble{
  display:grid!important;
}
.plb-breakfast-card[data-qty="0"] .plb-breakfast-action-bubble{
  width:46px!important;
  height:46px!important;
  min-width:46px!important;
}
.plb-breakfast-card:not([data-qty="0"]) .plb-breakfast-action-bubble{
  display:grid!important;
  width:34px!important;
  height:34px!important;
  min-width:34px!important;
}


/* v0.9.37 – explicit quantity controls: −  +  quantity */
.plb-breakfast-bubbles{flex-direction:row!important}
.plb-breakfast-minus,.plb-breakfast-plus{display:grid!important;width:34px!important;height:34px!important;min-width:34px!important;border-radius:5px!important;border:2px solid #760076!important;background:#fff!important;color:#760076!important;box-shadow:none!important;place-items:center!important}
.plb-breakfast-minus[hidden],.plb-breakfast-plus[hidden]{display:none!important}
.plb-breakfast-card[data-qty="0"] .plb-breakfast-minus{display:none!important}
.plb-breakfast-card[data-qty="0"] .plb-breakfast-plus{display:grid!important;width:46px!important;height:46px!important;min-width:46px!important}
.plb-breakfast-card:not([data-qty="0"]) .plb-breakfast-minus,.plb-breakfast-card:not([data-qty="0"]) .plb-breakfast-plus{width:34px!important;height:34px!important;min-width:34px!important}


/* v0.9.38 – category overage notice belongs to each active product */
.plb-breakfast-item{min-width:0}
.plb-breakfast-item .plb-breakfast-overage-info{margin:8px 0 0!important}

/* v0.9.39 – clear paid-items checkout summary */
.plb-breakfast-checkout-summary{width:100%;min-width:0}
.plb-breakfast-summary-title{font-size:.82rem!important;font-weight:700;color:#746b77!important;margin-bottom:6px}
.plb-breakfast-paid-items{display:grid;gap:7px;margin:5px 0 10px}
.plb-breakfast-paid-line{display:grid;grid-template-columns:30px minmax(0,1fr) auto;align-items:center;gap:8px}
.plb-breakfast-paid-remove{width:28px!important;height:28px!important;min-width:28px!important;padding:0!important;border:1.5px solid #760076!important;background:#fff!important;color:#760076!important;font-size:1.1rem!important;font-weight:700!important;line-height:1!important;cursor:pointer}
.plb-breakfast-paid-label{color:#2b2630!important;font-size:.92rem}
.plb-breakfast-paid-price{font-size:.92rem!important;white-space:nowrap}
.plb-breakfast-paid-total-row{display:flex;align-items:baseline;justify-content:space-between;gap:14px;padding-top:8px;border-top:1px solid #eadfea}
.plb-breakfast-paid-total-row strong{font-size:1.15rem!important}
.plb-breakfast-footer [data-free-block] strong{font-size:1rem!important;margin-bottom:3px}
.plb-breakfast-closed{padding:clamp(.25rem,2vw,1rem) 0}
.plb-breakfast-closed h2{max-width:760px}
@media(max-width:760px){.plb-breakfast-paid-line{grid-template-columns:30px minmax(0,1fr) auto}.plb-breakfast-footer{gap:.8rem}}

/* v0.9.40 – max quantity state + breakfast date/time summary */
.plb-breakfast-card.is-max .plb-breakfast-plus,.plb-breakfast-card .plb-breakfast-plus[hidden]{display:none!important}
.plb-breakfast-when{font-size:.92rem;font-weight:700;color:#2b2630;margin:0 0 10px;line-height:1.4}

/* v0.9.42 – hard guard for one-unit products; JS handles every other configured maximum. */
.plb-breakfast-card[data-max-qty="1"][data-qty="1"] .plb-breakfast-plus{display:none!important}
.plb-breakfast-plus[disabled]{display:none!important}

/* v0.9.53 – confirmed breakfast summary and shared-time guidance */
.plb-breakfast-confirmed-view{border:1px solid #e5d8e4;border-radius:5px;padding:18px;background:#fff;margin:14px 0}.plb-breakfast-confirmed-view h3{margin:0 0 5px;color:#760076}.plb-breakfast-confirmed-view p{margin:0 0 12px}.plb-breakfast-confirmed-view ul{margin:10px 0 16px;padding-left:20px}.plb-breakfast-edit{display:inline-flex;border:1.5px solid #760076!important;border-radius:5px!important;background:#fff!important;color:#760076!important;padding:10px 14px!important;font:inherit!important;font-weight:700!important;text-decoration:none!important;cursor:pointer}.plb-breakfast-time small{display:block;margin-top:7px;color:#766b77;line-height:1.45}
