.btn{justify-content:center;align-items:center;gap:var(--space-2);min-height:var(--touch-min);padding:var(--space-3) var(--space-8);border-radius:var(--radius-lg);font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);letter-spacing:.02em;cursor:pointer;transition:transform var(--motion-base) var(--motion-ease), box-shadow var(--motion-base) var(--motion-ease), background-color var(--motion-base) var(--motion-ease), border-color var(--motion-base) var(--motion-ease), color var(--motion-base) var(--motion-ease);-webkit-user-select:none;user-select:none;border:1px solid #0000;line-height:1.4;text-decoration:none;display:inline-flex}.btn:hover{text-decoration:none}.btn--lg{padding:var(--space-4) var(--space-10);font-size:var(--font-size-md)}.btn--full{width:100%}.btn--primary{background:linear-gradient(135deg, var(--color-brand-gold) 0%, var(--color-brand-gold-soft) 100%);color:var(--color-text-inverse)}.btn--primary:hover:not(:disabled){box-shadow:var(--shadow-gold-glow);transform:translateY(-2px)}.btn--primary:active:not(:disabled){transform:translateY(0)}.btn--secondary{color:var(--color-text-secondary);border-color:var(--color-border-subtle);background:0 0}.btn--secondary:hover:not(:disabled){border-color:var(--color-brand-gold);color:var(--color-brand-gold);background:#d6a66514}.btn--ghost{color:var(--color-text-link);padding-left:var(--space-3);padding-right:var(--space-3);background:0 0}.btn--ghost:hover:not(:disabled){background:#d6a6651a}.btn--danger{color:var(--color-error);background:0 0;border-color:#d9827c66}.btn--danger:hover:not(:disabled){background:var(--color-error-bg);border-color:var(--color-error)}.btn:disabled{opacity:.45;cursor:not-allowed;box-shadow:none;transform:none}
