/* Keep optional rewards in one 44px shelf; the board recipe stays outside it. */
#bakeryProgress{display:block;margin:5px 0 4px;border:1px solid #c8ac7b;border-radius:12px;background:linear-gradient(105deg,#fff7df,#efe0bd);box-shadow:0 2px 0 #ac87564d;overflow:hidden}
.bakery-progress-toggle{display:flex;align-items:center;gap:8px;width:100%;min-height:44px;padding:5px 10px;margin:0;border:0;border-radius:11px;background:transparent;color:#62492d;text-align:left;box-shadow:none}
.bakery-progress-toggle:hover{background:#fff4d5}.bakery-progress-toggle:active{transform:none}.progress-emblem{display:grid;place-items:center;width:29px;height:29px;flex:0 0 29px;border-radius:50%;background:#e4e6c9;color:#75864f;font-size:22px;border:1px solid #b5bd8f}.progress-strip-copy{min-width:0;flex:1}.progress-strip-copy b{display:block;font-size:11px;line-height:1.4}.progress-strip-copy small{display:block;font-size:10px;line-height:1.4;color:#7a6547;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bakery-progress-toggle>strong{font-size:12px;font-variant-numeric:tabular-nums;white-space:nowrap}.progress-chevron{width:18px;text-align:center;font-size:20px;color:#7e895b}
.bakery-progress-panel{display:grid;gap:6px;padding:7px;border-top:1px solid #cbb68e70}.bakery-progress-panel[hidden]{display:none!important}
#bakeryProgress .bakery-goals,#bakeryProgress .cosmetic-goal,#bakeryProgress .progress-collections{min-height:52px;margin:0;display:flex;flex-direction:row;align-items:center;padding:6px 8px;gap:8px;border-radius:9px;background:#fff7e1;border:1px solid #dac499;box-shadow:0 1px #c9b38c55}
#bakeryProgress .cosmetic-goal{flex-wrap:nowrap}#bakeryProgress .cosmetic-goal-amount{width:auto;display:block;text-align:right}#bakeryProgress .cosmetic-goal-amount small{font-size:9px}#bakeryProgress .cosmetic-goal-copy>b{font-size:11px}
.customer-avatar{display:block;width:46px;height:46px;flex:0 0 46px;filter:drop-shadow(0 2px 0 #9c774a33)}.customer-order-copy{min-width:0;flex:1}.customer-order-copy b{display:block;font-size:12px}.customer-order-copy small{display:block;font-size:10px;line-height:1.45;color:#806649}#bakeryProgress .customer-order>strong{font-size:12px;color:#667b4c;font-variant-numeric:tabular-nums}.customer-order-copy .customer-rosette{display:inline-grid;width:16px;height:16px;font-size:13px;vertical-align:middle;box-shadow:none;border:0}.customer-order:disabled{opacity:.85}
.progress-collections{width:100%;color:#664c30;text-align:left}.progress-collections>span:first-child{font-size:27px;color:#aa795f;flex:0 0 32px;text-align:center}.progress-collections>span:nth-child(2){flex:1}.progress-collections b{display:block;font-size:11px}.progress-collections small{display:block;font-size:9px;line-height:1.5;color:#806649}
.customer-cafe h2{margin-bottom:14px}.customer-welcome{display:flex;gap:13px;align-items:center;margin:12px 0 16px}.customer-welcome .customer-avatar{width:70px;height:70px;flex-basis:70px}.customer-welcome b{font-size:14px}.customer-welcome p{font-family:Georgia,serif;font-style:italic;font-size:14px;margin:4px 0;color:#8f6546;line-height:1.4}.customer-active{padding:15px;border:1px solid #d4b886;border-radius:15px;background:linear-gradient(130deg,#fff8e2,#f2e4c5)}.customer-active h3{font-size:19px;margin:7px 0}.customer-active p{font-size:12px;margin:8px 0}.customer-active progress{display:block;width:100%;height:8px;border:0;border-radius:8px;accent-color:#7b9161;margin:12px 0 7px}.customer-active>b{display:block;text-align:right;color:#6b7e50;font-size:12px}.customer-active>small{display:block;line-height:1.5;font-size:10px;color:#796347}.customer-active .customer-help{font-size:11px;line-height:1.5;border-top:1px solid #d8c59e;padding-top:10px;margin-bottom:0}.customer-note{font-size:11px!important;line-height:1.6!important;color:#7b6447}.customer-keepsake-heading{font-size:19px;margin:22px 0 7px}.customer-keepsakes{display:grid;gap:10px}.customer-keepsakes article{display:grid;grid-template-columns:46px 1fr;align-items:center;gap:6px 10px;padding:12px;border:1px solid #d7c097;border-radius:13px;background:#fff6df}.customer-keepsakes b{display:block;font-size:13px}.customer-keepsakes small,.customer-keepsakes article>div>span{display:block;font-size:10px;line-height:1.6;color:#806649}.customer-badge-choice{grid-column:1/-1;display:flex;align-items:center;gap:8px;border-top:1px solid #d9c8a8;padding-top:9px}.customer-keepsakes .customer-badge-choice>b{flex:1;font-size:11px}.customer-rosette{display:grid;place-items:center;width:31px;height:31px;border-radius:50%;border:2px solid #be974b;background:radial-gradient(circle,#fff1b5,#e3bc6a);color:#967044;font-size:22px;box-shadow:0 2px #a7834a40}.customer-badge-choice button{font-size:10px;padding:7px 9px;min-height:36px;margin:0}.customer-badge-choice button:disabled{background:#d8d6bb;color:#6c6e54;box-shadow:none;opacity:1}.customer-footer{display:grid;gap:5px;margin-top:16px}.customer-footer button{margin:0;min-height:44px;font-size:12px}.customer-thanks .customer-avatar{animation:customer-nod .65s ease both}.customer-arrived .bakery-progress-toggle{background:#e9ecd2}
@keyframes customer-nod{0%,100%{transform:rotate(0) scale(1)}35%{transform:rotate(-9deg) scale(1.1)}70%{transform:rotate(6deg) scale(1.04)}}
@media(max-width:360px){.bakery-progress-toggle{gap:5px;padding:5px 7px}.progress-strip-copy small{font-size:9px}.customer-order-copy b{font-size:11px}.customer-order-copy small{font-size:9px}.customer-avatar{width:38px;height:38px;flex-basis:38px}}
@media(prefers-reduced-motion:reduce){.customer-thanks .customer-avatar{animation:none}}
.customer-keepsakes .customer-badge-choice>.customer-rosette{display:grid;font-size:22px;color:#76522c}.customer-active progress::-webkit-progress-bar{background:#e5d7b7;border-radius:8px}.customer-active progress::-webkit-progress-value{background:#7b9161;border-radius:8px}
/* Keep the next action readable; optional collections open only on request. */
.progress-strip-copy b em{font-style:normal;font-size:9px;font-weight:400;color:#806b4c;margin-left:4px}
.progress-panel-note{margin:0 3px 2px;font-size:10px;color:#7b6549;line-height:1.4}
.progress-chevron{font-family:Arial,sans-serif;font-size:21px;line-height:1}
.customer-intro{font-size:12px!important;line-height:1.5!important;margin:-4px 0 14px!important;color:#806649}
.customer-cafe .customer-active h3{font-family:inherit;font-size:17px;line-height:1.4;margin:8px 0 12px}
.customer-request-meter{display:flex;align-items:center;gap:10px}.customer-request-meter progress{flex:1;margin:0;height:9px}.customer-request-meter b{font-size:13px;color:#687b4a;white-space:nowrap}
.customer-cafe .customer-active .customer-help{border:0;padding:0;margin:12px 0 8px;font-size:12px!important}.customer-cafe .customer-active>small{font-size:11px;line-height:1.5}
.customer-next-reward{display:flex;gap:11px;align-items:center;padding:13px 4px}.customer-next-reward b{display:block;font-size:12px}.customer-next-reward small{display:block;font-size:11px;color:#806649;margin-top:4px}
.customer-cafe #customerBake{width:100%;min-height:46px;margin:0 0 14px;font-size:14px}
.customer-collection,.customer-more-rewards{border-top:1px solid #cdb68b}.customer-cafe summary{cursor:pointer;padding:14px 2px;min-height:44px;font-size:12px;font-weight:600;color:#72563a}.customer-cafe summary span{float:right;font-size:11px;color:#7c8c5c}.customer-cafe summary:focus-visible{outline:2px solid #697d4c;outline-offset:2px;border-radius:5px}
.customer-cafe .customer-note{margin:0 0 12px}.customer-cafe .customer-keepsakes{margin-bottom:14px}.customer-badge-choice button{min-height:44px;font-size:11px}.customer-cafe #customerAllRewards{min-height:44px;margin-bottom:12px;font-size:12px}
@media(max-width:360px){.progress-strip-copy b em{font-size:8px;margin-left:2px}.customer-cafe .customer-active{padding:11px}.customer-cafe .customer-active h3{font-size:16px}.customer-welcome{gap:9px}}

/* A customer's delight stays within the existing 44px bakery shelf. */
.progress-emblem{position:relative;isolation:isolate}
.progress-emblem .customer-avatar{width:29px;height:29px;flex-basis:29px;filter:none}
.customer-toast-heart{position:absolute;right:-5px;top:-2px;width:18px;height:18px;pointer-events:none;transform-origin:50% 85%;animation:customer-heart-pop 1.2s ease-out both}
.customer-cheering .progress-emblem .customer-avatar{animation:customer-delight .65s cubic-bezier(.2,.8,.3,1) both;transform-origin:50% 80%}
.customer-cheering .progress-strip-copy small{color:#8b573d;font-weight:700}
.customer-big-cheer .customer-toast-heart{width:20px;height:20px;right:-5px;top:-2px}
.customer-big-cheer .progress-emblem .customer-avatar{animation-name:customer-big-delight}
@keyframes customer-delight{0%,100%{transform:translateY(0) rotate(0)}30%{transform:translateY(-2px) rotate(-7deg)}65%{transform:translateY(0) rotate(5deg)}}
@keyframes customer-big-delight{0%,100%{transform:translateY(0) rotate(0)}25%{transform:translateY(-3px) rotate(-9deg)}55%{transform:translateY(0) rotate(7deg)}78%{transform:translateY(-1px) rotate(-3deg)}}
@keyframes customer-heart-pop{0%{opacity:0;transform:translateY(5px) scale(.45) rotate(-15deg)}20%{opacity:1;transform:translateY(0) scale(1.12) rotate(7deg)}40%,75%{opacity:1;transform:scale(1) rotate(-4deg)}100%{opacity:0;transform:translateY(-3px) scale(.95)}}
@media(prefers-reduced-motion:reduce){.customer-cheering .progress-emblem .customer-avatar,.customer-toast-heart{animation:none;transform:none}}
