.sc{--stamp:clamp(38px, 11vw, 52px);--ink:var(--brand,#2b7a5b);border:1px solid color-mix(in srgb, var(--brand,#2b7a5b) 18%, white);box-shadow:0 1px 2px #0000000d, 0 8px 24px -12px color-mix(in srgb, var(--brand,#2b7a5b) 30%, transparent);color:#1a1a1a;background:#fff;border-radius:22px;padding:18px 18px 16px;position:relative}.sc-compact{--stamp:34px;border-radius:16px;padding:12px 12px 10px}.sc-nudge{animation:.38s cubic-bezier(.22,1,.36,1) sc-nudge}@keyframes sc-nudge{0%{transform:none}30%{transform:translateY(2px)rotate(-.6deg)scale(.995)}60%{transform:translateY(-1px)rotate(.4deg)}to{transform:none}}.sc-head{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.sc-merchant{font-weight:600}.sc-count{color:#6b6b6b;font-variant-numeric:tabular-nums;align-items:center;gap:8px;display:inline-flex}.sc-num b{color:#1a1a1a;font-size:1.35rem;display:inline-block}.sc-tick{animation:.26s cubic-bezier(.22,1,.36,1) sc-tick}@keyframes sc-tick{0%{opacity:0;transform:translateY(8px)scale(.9)}to{opacity:1;transform:none}}.sc-ring{transform:rotate(-90deg)}.sc-ring circle{fill:none;stroke-width:4px}.sc-ring-bg{stroke:color-mix(in srgb, var(--brand,#2b7a5b) 14%, white)}.sc-ring-fg{stroke:var(--brand,#2b7a5b);stroke-linecap:round;stroke-dasharray:1;transition:stroke-dashoffset .42s cubic-bezier(.22,1,.36,1)}.sc-grid{grid-template-columns:repeat(var(--cols), var(--stamp));justify-content:space-between;row-gap:12px;margin:0;padding:0;list-style:none;display:grid}.sc-slot{width:var(--stamp);height:var(--stamp);border:1.5px dashed color-mix(in srgb, var(--brand,#2b7a5b) 28%, #bbb);color:#9a9a9a;border-radius:50%;place-items:center;display:grid;position:relative}.sc-slot.on{border-color:#0000}.sc-slot.milestone{border-style:solid;border-color:color-mix(in srgb, var(--brand,#2b7a5b) 40%, transparent);color:var(--brand,#2b7a5b);background:color-mix(in srgb, var(--brand,#2b7a5b) 8%, transparent)}.sc-idx{font-variant-numeric:tabular-nums;font-size:.75rem}.sc-stamp{background:var(--brand,#2b7a5b);color:var(--on-brand,#fff);transform:rotate(var(--tilt));box-shadow:inset 0 0 0 2px color-mix(in srgb, var(--on-brand,#fff) 28%, transparent), inset 0 0 0 4px var(--brand,#2b7a5b), inset 0 0 0 5px color-mix(in srgb, var(--on-brand,#fff) 18%, transparent);border-radius:50%;place-items:center;display:grid;position:absolute;inset:0}.sc-stamp.new{opacity:0;animation:sc-press .52s cubic-bezier(.34, 1.56, .64, 1) var(--delay) forwards}@keyframes sc-press{0%{opacity:0;transform:translateY(-14px) scale(1.7) rotate(calc(var(--tilt) - 14deg))}45%{opacity:1}to{opacity:1;transform:translateY(0) scale(1) rotate(var(--tilt))}}.sc-ink{border:2px solid var(--brand,#2b7a5b);opacity:0;animation:sc-ripple .6s cubic-bezier(.22, 1, .36, 1) calc(var(--delay) + .24s) forwards;border-radius:50%;position:absolute;inset:-2px}@keyframes sc-ripple{0%{opacity:.55;transform:scale(.9)}to{opacity:0;transform:scale(1.7)}}.sc .sc-foot{color:#4a4a4a;align-items:center;gap:8px;margin:14px 0 0;font-size:.95rem;display:flex}.sc-complete .sc-foot{color:var(--brand,#2b7a5b);font-weight:600}.sc.sc-compact .sc-foot{margin-top:10px;font-size:.85rem}@media (prefers-reduced-motion:reduce){.sc-nudge,.sc-tick,.sc-ink{animation:none}.sc-stamp.new{animation:sc-fade .2s linear var(--delay) forwards}.sc-ring-fg{transition:none}@keyframes sc-fade{0%{opacity:0}to{opacity:1}}}
