.gof-shared-btn{border-radius:var(--r-sm);white-space:nowrap;cursor:pointer;border:1.5px solid #0000;align-items:center;gap:.4rem;padding:.45rem 1rem;font-size:.8rem;font-weight:700;text-decoration:none;transition:background .15s,border-color .15s,box-shadow .15s;display:inline-flex}.gof-shared-btn--soft{color:var(--clr-primary);background:color-mix(in srgb, var(--clr-primary) 10%, transparent);border-color:color-mix(in srgb, var(--clr-primary) 35%, transparent)}.gof-shared-btn--soft:hover{background:color-mix(in srgb, var(--clr-primary) 18%, transparent);border-color:color-mix(in srgb, var(--clr-primary) 60%, transparent);box-shadow:0 0 0 3px color-mix(in srgb, var(--clr-primary) 8%, transparent)}.gof-shared-btn--solid{color:#fff;background:var(--clr-primary);border-color:var(--clr-primary)}.gof-shared-btn--solid:hover{background:color-mix(in srgb, var(--clr-primary) 85%, black);border-color:color-mix(in srgb, var(--clr-primary) 85%, black)}.gof-shared-btn--outline{color:var(--clr-primary);border-color:var(--clr-primary);background:0 0}.gof-shared-btn--outline:hover{background:color-mix(in srgb, var(--clr-primary) 10%, transparent)}:root:not([data-theme=light]) .gof-shared-btn--soft{color:#fff;background:var(--clr-primary);border-color:var(--clr-primary)}:root:not([data-theme=light]) .gof-shared-btn--soft:hover{background:color-mix(in srgb, var(--clr-primary) 85%, black);border-color:color-mix(in srgb, var(--clr-primary) 85%, black)}@media (max-width:1023px){.gof-shared-btn{padding:.3rem .7rem;font-size:.72rem}}.gof-btn{justify-content:center;align-items:center;gap:var(--space-2);font-family:inherit;font-weight:var(--font-semibold);font-size:var(--text-sm);white-space:nowrap;cursor:pointer;border-radius:var(--r-full);transition:background var(--t-fast), border-color var(--t-fast), opacity var(--t-fast);-webkit-tap-highlight-color:transparent;user-select:none;border:1px solid #0000;line-height:1;text-decoration:none;display:inline-flex}.gof-btn:focus-visible{outline:2px solid var(--clr-primary);outline-offset:2px}.gof-btn:disabled,.gof-btn[aria-disabled=true]{opacity:.45;cursor:not-allowed;pointer-events:none}.gof-btn--sm{height:var(--btn-h-sm);padding:0 var(--space-4);font-size:var(--text-xs);min-width:var(--btn-h-sm)}.gof-btn--md{height:var(--btn-h-md);padding:0 var(--space-6);font-size:var(--text-sm);min-width:var(--btn-h-md)}.gof-btn--lg{height:var(--btn-h-lg);padding:0 var(--space-8);font-size:var(--text-base);min-width:var(--btn-h-lg)}.gof-btn--full{width:100%}.gof-btn--primary{background:var(--clr-primary);color:#fff;border-color:#0000}.gof-btn--primary:hover:not(:disabled){background:var(--clr-primary-hover);color:#fff;border-color:#0000}.gof-btn--secondary{background:var(--clr-card-bg);color:var(--clr-text);border-color:var(--clr-border)}.gof-btn--secondary:hover:not(:disabled){border-color:var(--clr-primary)}.gof-btn--ghost{color:var(--clr-text-secondary);background:0 0;border-color:#0000}.gof-btn--ghost:hover:not(:disabled){background:var(--clr-surface-sm);border-color:#0000}.gof-btn--ghost-pill{color:var(--clr-text-secondary);border-color:var(--clr-border);border-radius:var(--r-full);background:0 0}.gof-btn--ghost-pill:hover:not(:disabled){border-color:var(--clr-primary);color:var(--clr-primary)}.gof-btn--outline{color:var(--clr-text);border-color:var(--clr-border);background:0 0}.gof-btn--outline:hover:not(:disabled){border-color:var(--clr-primary);color:var(--clr-primary)}.gof-btn--destructive{background:var(--clr-error);color:#fff;border-color:#0000}.gof-btn--destructive:hover:not(:disabled){background:var(--clr-error-light);border-color:#0000}.gof-btn--icon{background:var(--clr-card-bg);color:var(--clr-text-muted);border-color:var(--clr-border);border-radius:var(--r-md);aspect-ratio:1;padding:0}.gof-btn--icon:hover:not(:disabled){border-color:var(--clr-primary);color:var(--clr-primary)}.gof-btn--loading{pointer-events:none}.gof-btn__spinner{width:1em;height:1em;animation:gof-spin var(--anim-spin) linear infinite;border:2px solid;border-top-color:#0000;border-radius:50%;flex-shrink:0}@media (max-width:767px){.gof-btn--sm{height:var(--touch-target);padding:0 var(--space-4)}}
