.badge{display:inline-flex;align-items:center;justify-content:center;gap:2px;padding:6px 12px;border-radius:var(--radius-sm);font-family:var(--font-primary);font-weight:var(--font-bold);text-transform:uppercase;line-height:10px;white-space:nowrap}.badge--new{background-color:var(--color-green);color:var(--color-on-primary);font-size:var(--text-xs)}.badge--hit{background-color:var(--color-red);color:var(--color-on-brand);font-size:var(--text-xs)}.badge--spicy{background-color:var(--color-danger-background);color:var(--color-danger-foreground);font-size:var(--text-2xs)}.badge--author{background-color:var(--color-success-background);color:var(--color-success-foreground);font-size:var(--text-2xs)}.badge--kids{background-color:var(--color-green-500);color:var(--color-selected-foreground);font-size:var(--text-2xs)}.badge--paid{background-color:var(--color-success-background);color:var(--color-success-foreground);font-size:var(--text-xs)}.badge--pending{background-color:var(--color-surface-muted);color:var(--color-text);font-size:var(--text-xs)}.badge--cancelled{background-color:var(--color-danger-background);color:var(--color-danger-foreground);font-size:var(--text-xs)}.badge__icon{display:flex;align-items:center;width:10px;height:10px}.badge__icon svg{width:100%;height:100%}.price-button{display:inline-flex;align-items:center;justify-content:center;min-width:108px;height:36px;padding:0 var(--spacing-lg);border-radius:var(--radius-lg);border:none;background:var(--color-button-primary-background);cursor:pointer;flex-shrink:0;position:relative;overflow:hidden}.price-button:after{content:"";position:absolute;inset:0;border-radius:inherit;background:var(--color-green);opacity:0;transition:opacity var(--duration-fast) var(--ease-out);pointer-events:none}.price-button:hover:after{opacity:1}.price-button:hover .price-button__value{color:var(--color-button-primary-hover-foreground)}.price-button:active:after{background:var(--color-button-primary-background);opacity:1}.price-button:active .price-button__value{color:var(--color-button-primary-foreground)}.price-button__value{font-size:var(--text-base);font-weight:var(--font-medium);color:var(--color-button-primary-foreground);transition:color var(--duration-fast) var(--ease-out);white-space:nowrap;-webkit-user-select:none;user-select:none;position:relative;z-index:1}.price-button__value--up{animation:price-slide-up var(--duration-normal) ease-out}.price-button__value--down{animation:price-slide-down var(--duration-normal) ease-out}.price-button--active{padding:0;gap:0;border:none;background:var(--color-green-500);cursor:default}.price-button--active:after{display:none}.price-button--active .price-button__value{min-width:36px;text-align:center;color:var(--color-on-primary)}.price-button__minus,.price-button__plus{display:flex;align-items:center;justify-content:center;width:28px;height:36px;background:none;border:none;cursor:pointer;padding:0;opacity:.7;transition:opacity var(--duration-fast) var(--ease-out);position:relative;z-index:1}.price-button__minus:hover,.price-button__plus:hover{opacity:1}.price-button__minus:disabled,.price-button__plus:disabled{cursor:not-allowed;opacity:.3}.price-button__minus:disabled:hover,.price-button__plus:disabled:hover{opacity:.3}@keyframes price-slide-up{0%{transform:translateY(8px);opacity:.3}to{transform:translateY(0);opacity:1}}@keyframes price-slide-down{0%{transform:translateY(-8px);opacity:.3}to{transform:translateY(0);opacity:1}}.selection-badge{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;background:var(--color-surface);color:var(--color-success-border);box-shadow:inset 0 0 0 1.5px var(--color-success-border);flex-shrink:0}.selection-badge__icon{width:13px;height:13px}.selection-badge--unchecked{background:var(--color-surface-muted)}
