@layer theme,base,components,utilities;@layer forge{.ff-button{--ff-button-bg:var(--ff-color-primary,#2563eb);--ff-button-bg-hover:var(--ff-color-primary-hover,#1d4ed8);--ff-button-fg:var(--ff-color-neutral-0,#fff);--ff-button-border:var(--ff-color-primary,#2563eb);--ff-button-shadow:var(--ff-shadow-md,0 10px 20px #2563eb2e);--ff-button-shadow-hover:var(--ff-shadow-lg,0 14px 28px #2563eb33);background-color:var(--ff-button-bg);border:1px solid var(--ff-button-border);border-radius:var(--ff-radius-lg,12px);box-shadow:var(--ff-button-shadow);color:var(--ff-button-fg);cursor:pointer;font-size:var(--ff-font-size-sm,.875rem);font-weight:var(--ff-font-weight-semibold,600);align-items:center;gap:var(--ff-spacing-2,.5rem);line-height:var(--ff-line-height-sm);padding:var(--ff-spacing-3,.75rem) var(--ff-spacing-5,1.25rem);justify-content:center;transition:background-color .2s,color .2s,box-shadow .2s,transform .2s;display:inline-flex;position:relative;overflow:hidden}.ff-button--mini{font-size:var(--ff-font-size-xs,.75rem);line-height:var(--ff-line-height-xs);padding:var(--ff-spacing-2,.5rem) var(--ff-spacing-4,1rem)}.ff-button--normal{padding:var(--ff-spacing-3,.75rem) var(--ff-spacing-5,1.25rem)}.ff-button--full{width:100%}.ff-button--uppercase{text-transform:uppercase}.ff-button:hover:not(.ff-button--disabled,:disabled){background-color:var(--ff-button-bg-hover);box-shadow:var(--ff-button-shadow-hover);transform:translateY(-1px)}.ff-button:active:not(.ff-button--disabled,:disabled){box-shadow:var(--ff-shadow-md,0 8px 16px #0000001f);transform:translateY(0)}.ff-button:focus-visible{outline:2px solid var(--ff-color-primary-outline,var(--ff-color-primary,#2563eb));outline-offset:2px}.ff-button--disabled,.ff-button:disabled{box-shadow:none;cursor:not-allowed;opacity:.65;transform:none}.ff-button--primary{--ff-button-bg:var(--ff-color-primary,#2563eb);--ff-button-bg-hover:var(--ff-color-primary-hover,#1d4ed8);--ff-button-border:var(--ff-color-primary,#2563eb);--ff-button-shadow:var(--ff-shadow-md,0 10px 20px #2563eb2e);--ff-button-shadow-hover:var(--ff-shadow-lg,0 14px 28px #2563eb33)}.ff-button--buy,.ff-button--primary,.ff-button--secondary{--ff-button-fg:var(--ff-color-neutral-0,#fff)}.ff-button--secondary{--ff-button-bg:var(--ff-color-secondary,var(--ff-color-neutral-900,#0f172a));--ff-button-bg-hover:color-mix(in srgb, var(--ff-color-secondary,#0f172a) 90%, #000);--ff-button-border:var(--ff-color-secondary,var(--ff-color-neutral-900,#0f172a));--ff-button-shadow:var(--ff-shadow-md,0 10px 20px #0f172a2e);--ff-button-shadow-hover:var(--ff-shadow-lg,0 14px 28px #0f172a38)}.ff-button--buy{--ff-button-bg:var(--ff-color-buy-500,#00b3b3);--ff-button-bg-hover:var(--ff-color-buy-600,#00a1a1);--ff-button-border:var(--ff-color-buy-600,#00a1a1);--ff-button-shadow:0 10px 20px color-mix(in srgb, var(--ff-color-buy-500,#00b3b3) 18%, transparent);--ff-button-shadow-hover:0 14px 28px color-mix(in srgb, var(--ff-color-buy-500,#00b3b3) 22%, transparent)}.ff-button--outline{--ff-button-bg:transparent;--ff-button-bg-hover:color-mix(in srgb, var(--ff-color-neutral-100,#e2e8f0) 70%, transparent);--ff-button-fg:var(--ff-color-primary,#2563eb);--ff-button-border:var(--ff-color-primary,#2563eb);--ff-button-shadow:var(--ff-shadow-sm,0 4px 8px #0f172a14);--ff-button-shadow-hover:var(--ff-shadow-md,0 6px 12px #0f172a1f)}.ff-button--outline:hover:not(.ff-button--disabled,:disabled){color:var(--ff-color-primary-hover,#1d4ed8)}.ff-button--pagination{--ff-button-bg:var(--ff-color-neutral-50,#f8fafc);--ff-button-bg-hover:color-mix(in srgb, var(--ff-color-neutral-100,#e2e8f0) 85%, transparent 15%);--ff-button-fg:var(--ff-color-neutral-800,#1f2937);--ff-button-border:var(--ff-color-neutral-200,#e5e7eb);--ff-button-shadow:var(--ff-shadow-xs,0 1px 2px #0f172a0f);--ff-button-shadow-hover:var(--ff-shadow-sm,0 3px 6px #0f172a1f);padding-inline:var(--ff-spacing-3,.75rem)}.ff-button--link{--ff-button-bg:transparent;--ff-button-bg-hover:transparent;--ff-button-fg:var(--ff-color-primary,#2563eb);--ff-button-border:transparent;--ff-button-shadow:none;--ff-button-shadow-hover:none;border-radius:var(--ff-radius-sm,4px);font-weight:var(--ff-font-weight-medium,500);padding:var(--ff-spacing-1,.25rem) var(--ff-spacing-2,.5rem);text-decoration:underline}.ff-button--link:hover:not(.ff-button--disabled,:disabled){color:var(--ff-color-primary-hover,#1d4ed8);transform:none}.ff-button--error{--ff-button-bg:var(--ff-color-danger,#dc2626);--ff-button-bg-hover:color-mix(in srgb, var(--ff-color-danger,#dc2626) 90%, #8a1111);--ff-button-fg:var(--ff-color-neutral-0,#fff);--ff-button-border:var(--ff-color-danger,#dc2626);--ff-button-shadow:var(--ff-shadow-md,0 10px 20px #dc26262e);--ff-button-shadow-hover:var(--ff-shadow-lg,0 14px 28px #dc262638)}.ff-button--loading{pointer-events:none}.ff-button__content{align-items:center;gap:var(--ff-spacing-2,.5rem);justify-content:center;transition:opacity .2s;display:inline-flex}.ff-button__content--hidden{opacity:0}.ff-button__overlay{padding:0 var(--ff-spacing-4,1rem);pointer-events:none;text-align:center;justify-content:center;position:absolute;inset:0}.ff-button__overlay,.ff-button__state{align-items:center;gap:var(--ff-spacing-2,.5rem);display:inline-flex}.ff-button__state{font-size:var(--ff-font-size-sm,.875rem);line-height:var(--ff-line-height-sm)}.ff-button__loader{gap:var(--ff-spacing-1_5,.375rem);display:inline-flex}.ff-button__dot{opacity:.4;background-color:currentColor;border-radius:9999px;block-size:.5rem;inline-size:.5rem;animation:1s ease-in-out infinite ff-button-pulse}.ff-button__sr{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@keyframes ff-button-pulse{0%,to{opacity:.3;transform:scale(.9)}50%{opacity:1;transform:scale(1.1)}}}
