[hidden]{display:none!important}
.challenge-card{margin:22px 0 8px;padding:20px;background:#f3f5eb;border:1px solid #ced8c8;border-radius:10px}.challenge-toggle{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;padding:0;border:0;background:transparent;text-align:left;font:700 1.1rem/1.4 var(--body);color:#24442a;cursor:pointer}.challenge-toggle>span:first-child{text-decoration:underline;text-underline-offset:4px}.challenge-prize{background:var(--yellow);border-radius:20px;padding:5px 10px;white-space:nowrap;font-size:.875rem}.challenge-progress-note{font-size:.9375rem;margin-top:14px!important}.challenge-card .reward-progress{margin:12px 0 4px}.challenge-card h3{margin:14px 0 8px}.challenge-admin{margin-bottom:24px}.challenge-admin summary{font-weight:700;cursor:pointer;min-height:32px}.challenge-admin .rewards-form{margin-top:18px;max-width:650px}.challenge-admin .field-help{margin-top:12px}.challenge-admin .form-actions{margin-top:0}.challenge-admin summary:focus-visible{outline:3px solid #2670d9;outline-offset:3px}#challenge-purchase{padding:14px;background:#f3f5eb;border-radius:6px}
.rewards-page{padding:44px 0 64px;min-height:60vh}.rewards-title{margin-bottom:30px}.rewards-title h1{font:400 clamp(2.7rem,5vw,4.6rem)/1.1 var(--display);margin:8px 0 14px}.rewards-title>p:last-child{max-width:650px;color:var(--muted)}
.rewards-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px;align-items:start}.rewards-panel{border:1px solid var(--border);border-radius:12px;background:#fff;padding:30px;min-width:0}.rewards-panel h2{font-size:2rem;margin-bottom:16px}.rewards-panel h3{font-size:1.2rem;margin-bottom:10px}.rewards-panel p+p{margin-top:12px}
.reward-ticket{background:#325839;color:#fff;border-color:#325839;border-top:8px solid var(--yellow)}.reward-ticket .eyebrow{color:var(--yellow)}.reward-ticket h2{font-size:clamp(2.3rem,4vw,3.6rem);margin:16px 0}.reward-ticket .reward-value{color:var(--yellow);font:400 4.5rem/1.1 var(--display);margin:14px 0}.reward-ticket ul{padding-left:20px;margin:20px 0 0}.reward-ticket li{margin:10px 0}.reward-ticket a{color:var(--yellow)}
.rewards-form{display:grid;gap:13px}.rewards-form label{font-weight:700}.rewards-form input:not([type=checkbox]){width:100%;padding:13px 14px;border:1px solid #8f8c82;border-radius:6px;font:inherit;color:var(--ink);background:white;min-height:50px}.rewards-form input:focus-visible,.rewards-form button:focus-visible,.rewards-panel button:focus-visible{outline:3px solid #2670d9;outline-offset:3px}.rewards-form .check{display:flex;gap:12px;align-items:start;font-size:.9375rem;font-weight:400}.check input{margin-top:6px;width:20px;height:20px;flex:0 0 20px;accent-color:#325839}.rewards-form .field-help,.rewards-panel .field-help{font-size:.875rem;color:var(--muted);line-height:1.6}.rewards-panel .button{font-family:var(--body);cursor:pointer}.rewards-panel .button:disabled{opacity:.65;cursor:wait;transform:none}.rewards-panel .form-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:18px}.reward-status{margin-top:18px;font-weight:700;font-size:1rem}.reward-status:empty{margin:0}.reward-status[data-state=error]{color:#ac241a}.reward-status[data-state=success]{color:#245b2e}.text-button{font:inherit;color:var(--red);background:transparent;border:0;text-decoration:underline;cursor:pointer;padding:8px 0}.rewards-panel .balance{font:400 4rem/1.1 var(--display);color:#325839;margin:14px 0 5px}.member-phone{font-weight:700;font-variant-numeric:tabular-nums}.member-code{font-family:monospace;font-size:1rem;word-break:break-all}.reward-progress{width:100%;height:14px;accent-color:#325839;margin:18px 0 8px}.reward-progress::-webkit-progress-bar{background:#e8eadf;border-radius:20px}.reward-progress::-webkit-progress-value{background:#325839;border-radius:20px}.balance-label{font-size:.9375rem;color:var(--muted)}.reward-ready{background:var(--yellow);padding:12px 16px;border-radius:6px;font-weight:700;margin-top:16px}.member-card-note{margin-top:20px;padding-top:18px;border-top:1px solid var(--border);font-size:.9375rem}.activity{list-style:none;padding:0;margin:0}.activity li{display:flex;gap:16px;justify-content:space-between;border-bottom:1px solid var(--border);padding:16px 0}.activity li div{min-width:0}.activity small{display:block;color:var(--muted);font-size:.875rem}.activity strong{white-space:nowrap}.rewards-details{margin-top:30px;border-top:1px solid var(--border);padding-top:22px}.rewards-details summary{font-weight:700;cursor:pointer}.rewards-details p{margin-top:14px;max-width:850px;font-size:.9375rem}.staff-panel{margin-top:24px}.staff-panel .rewards-grid{margin-top:24px}.staff-result{padding:18px;background:#f3f5eb;border-radius:8px;margin-top:18px}.purchase-summary{background:#f3f5eb;padding:16px;border-radius:6px;font-weight:700}.rewards-links{display:flex;gap:20px;flex-wrap:wrap;margin-top:26px;font-size:.9375rem}.rewards-banner{background:var(--yellow);padding:28px 0}.rewards-banner .wrap{display:flex;align-items:center;justify-content:space-between;gap:24px}.rewards-banner h2{font-size:2rem}.rewards-banner p{margin-top:8px}.rewards-banner .button{flex-shrink:0}
@media(max-width:760px){.rewards-grid{grid-template-columns:1fr}.rewards-panel{padding:24px}.rewards-page{padding-top:30px}.rewards-banner .wrap{align-items:start;flex-direction:column}.reward-ticket{order:2}.rewards-panel .balance{font-size:3.6rem}}
