.button,.icon-button{display:inline-flex;justify-content:center;align-items:center;gap:var(--space-2);min-height:var(--target-size);border:1px solid transparent;border-radius:var(--radius-sm);font-weight:var(--weight-semibold);text-decoration:none;line-height:1.3;transition:background var(--duration-fast) var(--ease-default),color var(--duration-fast) var(--ease-default)}.button{padding:var(--space-3) var(--space-5);text-align:center;overflow-wrap:anywhere}.button--primary{background:var(--color-primary);color:var(--color-on-dark)}.button--primary:hover{background:var(--color-primary-hover)}.button--secondary{background:var(--color-charcoal);color:var(--color-on-dark)}.button--secondary:hover{background:var(--color-muted)}.button--outline{background:transparent;border-color:var(--color-text);color:var(--color-text)}.button--ghost,.icon-button{color:var(--color-text);background:transparent}.button--outline:hover,.button--ghost:hover,.icon-button:hover{background:var(--color-surface)}.button:active,.icon-button:active{transform:translateY(1px)}.button:disabled,.button[aria-disabled=true],.icon-button:disabled{opacity:.5;cursor:not-allowed;transform:none}.button[aria-busy=true]:after{content:"";width:1em;height:1em;border:2px solid currentColor;border-right-color:transparent;border-radius:var(--radius-pill);animation:button-spin .8s linear infinite}@keyframes button-spin{to{transform:rotate(360deg)}}.icon-button{min-width:var(--target-size);padding:var(--space-2);flex-shrink:0}.icon{width:1.375rem;height:1.375rem;flex-shrink:0;vertical-align:middle}.field{display:grid;gap:var(--space-2);min-width:0}.field label{font-size:var(--text-sm);font-weight:var(--weight-medium)}.input,.select,.textarea{width:100%;min-width:0;min-height:var(--target-size);border:1px solid var(--color-input-border);border-radius:var(--radius-sm);padding:var(--space-3) var(--space-4);color:var(--color-text);background:var(--color-background)}.textarea{min-height:8rem;resize:vertical}.input:focus,.select:focus,.textarea:focus{border-color:var(--color-primary)}[aria-invalid=true]{border-color:var(--color-error)}.field-error{color:var(--color-error);font-size:var(--text-sm)}.field-success{color:var(--color-success)}input:disabled,select:disabled,textarea:disabled{opacity:.6;cursor:not-allowed;background:var(--color-surface)}.choice{display:flex;align-items:center;gap:var(--space-3);min-height:var(--target-size);cursor:pointer}.choice input{width:1.125rem;height:1.125rem;accent-color:var(--color-primary);flex-shrink:0}.search-form{display:flex;gap:var(--space-2);align-items:end;width:100%}.search-form .field{flex:1}.badge{display:inline-flex;padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);font-size:var(--text-label);font-weight:var(--weight-semibold);line-height:1.5;background:var(--color-surface);color:var(--color-text)}.badge--sale{background:var(--color-primary);color:var(--color-on-dark)}.badge--new{color:var(--color-purple)}.badge--bestseller{background:var(--color-charcoal);color:var(--color-on-dark)}.badge--sold-out{color:var(--color-muted)}.product-card{min-width:0;position:relative}.product-card__media{display:block;aspect-ratio:1;overflow:hidden;background:var(--color-surface);border-radius:var(--radius-md)}.product-card__media img,.product-card__media svg{width:100%;height:100%;object-fit:contain}.product-card__badges{position:absolute;top:var(--space-3);inset-inline-start:var(--space-3);display:flex;flex-wrap:wrap;gap:var(--space-1);max-width:calc(100% - var(--space-5));pointer-events:none}.product-card__title{font-size:var(--text-body);line-height:var(--leading-body);letter-spacing:0;margin:var(--space-3) 0 var(--space-1)}.product-card__title a{color:inherit;text-decoration:none}.product-card__title a:hover{text-decoration:underline}.price{display:flex;flex-wrap:wrap;gap:var(--space-2);font-weight:var(--weight-semibold)}.price s{color:var(--color-muted);font-weight:var(--weight-regular)}.product-card__rating{font-size:var(--text-sm);color:var(--color-muted);margin-top:var(--space-2)}.product-card__actions{margin-top:var(--space-3)}.component-library{border-block:1px solid var(--color-border)}.component-library__panel{padding:var(--space-5);border:1px solid var(--color-border);border-radius:var(--radius-md)}
/*# sourceMappingURL=/cdn/shop/t/3/assets/components.css.map */
