/* Brew Lab r6: stamp loyalty panel, intentionally separate from checkout and Studio */
.reward-intro{margin-bottom:7px}
.reward-intro .eyebrow{color:#677d69}
.reward-summary{background:#344736;border:1px solid #3c533e;border-radius:24px;color:#fffdf4;padding:23px 20px;margin:20px 0 14px;overflow:hidden;position:relative}
.reward-summary::after{content:'✳';position:absolute;right:-21px;top:-37px;font-size:172px;color:#bdc9b712;pointer-events:none}
.reward-summary>*{position:relative;z-index:1}
.reward-small{font-size:10px;font-weight:850;letter-spacing:.16em;color:#d6e3d0}
.reward-summary h2{font-size:clamp(25px,5vw,36px);letter-spacing:-.06em;margin:8px 0 7px}
.reward-summary p{font-size:12px;line-height:1.55;color:#d8e2d1;margin:0 0 15px}
.reward-stamp-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:17px 0}
.reward-stamp{aspect-ratio:1.15;border-radius:50%;border:1px dashed #bbc9b5;background:#fff1;display:grid;place-items:center;color:#c2d2bb;font-size:18px;font-weight:850;max-width:85px;width:100%;margin:auto}
.reward-stamp.earned{color:#345038;background:#f6e6bc;border-color:#f6e6bc;box-shadow:0 2px 8px #152b2033}
.reward-summary .outline-button{width:100%;text-align:center;justify-content:center;background:#f3ebd7;color:#304536;border:none;font-size:13px}
.reward-summary .outline-button:disabled{opacity:.66;cursor:default}
.reward-section{margin:22px 0}
.reward-section h2{font-size:19px;color:#374938;letter-spacing:-.04em;margin:0 0 10px}
.reward-section>p{font-size:12px;color:#758473;line-height:1.5}
.reward-voucher{background:#fff;border:1px solid #dddfd3;border-radius:18px;padding:17px;margin-bottom:11px}
.reward-voucher-eyebrow{font-size:10px;font-weight:900;color:#607e62;letter-spacing:.09em}
.reward-code{display:block;font-size:clamp(24px,6vw,35px);letter-spacing:.12em;color:#334837;margin:12px 0;font-variant-numeric:tabular-nums}
.reward-voucher p{font-size:12px;line-height:1.5;color:#798373}
.reward-voucher button{min-width:150px;justify-content:center;padding:11px 15px}
.reward-used-label{font-size:12px;color:#7e897e}
.reward-history{border:1px solid #e5e6dc;background:#fff;border-radius:17px;overflow:hidden}
.reward-history-item{padding:15px;display:flex;justify-content:space-between;gap:9px;align-items:center;border-bottom:1px solid #eff0e9}
.reward-history-item:last-child{border-bottom:0}
.reward-history-info{min-width:0}
.reward-history-info strong{font-size:12px;color:#344737;display:block;margin-bottom:4px}
.reward-history-info small{color:#879083;font-size:10px}
.reward-history-points{font-size:11px;color:#617a61;font-weight:800;white-space:nowrap}
.reward-empty{padding:15px;font-size:12px;color:#899487;line-height:1.5}
.reward-signin{background:#fff;border:1px solid #e5e6dc;border-radius:21px;padding:22px;margin:20px 0}
.reward-signin h2{font-size:21px;letter-spacing:-.04em}
.reward-signin p{font-size:13px;color:#798473;line-height:1.6}
.reward-signin button{width:100%}
#rewardsStatus{font-size:12px;line-height:1.55;color:#6d7b71;margin:14px 0}
#rewardsStatus.error{color:#9a3930}
.reward-footer-note{font-size:11px;line-height:1.6;color:#879285;margin:15px 0}
